목차
一些常识
일반적인 문제 Go 언어에 종속 패키지가 있나요?

Go 언어에 종속 패키지가 있나요?

Apr 17, 2023 pm 04:14 PM
언어로 가다 골랭 프로그래밍

Go 언어에는 종속 패키지가 있습니다. 1. "go get" 명령을 사용하여 종속 패키지를 설치합니다. 2. "go mod"를 켠 다음 "go get"을 사용합니다. 3. github에서 종속 패키지를 수동으로 다운로드하여 해당 디렉토리에 넣습니다. 4. "GOPATH/pkg/mod" 아래에 해당 패키지를 복사합니다. 그런 다음 "go tidy"를 사용하여 자동으로 패키지 종속성을 조정하세요.

Go 언어에 종속 패키지가 있나요?

이 튜토리얼의 운영 체제: Windows 10 시스템, go1.20 버전, Dell G3 컴퓨터

종속 패키지가 있습니다. Go 언어로

이제는 go 모드 패키지 관리 도구를 사용하지만, 초보자는 종속 항목을 설치할 때 여전히 많은 문제를 겪고 있습니다. get

Go 언어에 종속 패키지가 있나요?go의 패키지 종속성을 처음 접한 날부터 선생님이나 읽은 정보는 다음과 같이 알려줄 것입니다: 직접 go get

. 이는 대부분의 패키지의 종속성 문제를 해결할 수 있는 가장 독창적인 설치 방법입니다.

그러나 설치에 100% 성공하지는 않습니다. 위 스크린샷: golang..org/x/crypto/ssh.

직접 go get, golang.org URL은 그렇지 않을 수 있습니다. 설명할 수 없는 이유로 인해 패키지를 성공적으로 설치할 수 없습니다.

2. GOPROXY

go get

这是最原始的安装方式,能解决大部分包的依赖问题。

但不是100% 都能安装成功,比如上面截图里面的包:golang.org/x/crypto/ssh

直接go get,可能会因为不可描述的原因无法访问到golang.org这个网址,包就无法安装成功。

二、配置 GOPROXY

go mod是go 1.11 新加的特性。

所以只要go版本大于 1.11,就自带了go mod包管理。

这是一个好东西,如果开启了go mod

项目里面初始化了go mod,再在工程目录下面使用go get拉包会自动使用go mod拉包,并整理到go.mod文件里。

但是默认使用的源是国外的,所以安装依赖包一般都很慢,或者不能成功。

所以需要设置下他们的代理,让他们从国内的服务器出去,这样速度和稳定性都能更好些。

如果使用的是goland可以command+,唤出偏好设置,在里面设置代理:

Go 언어에 종속 패키지가 있나요?

推荐代理到https://goproxy.cn这个上,七牛云家的,一直使用,很稳定。

修改好后,记得重新开终端!

如果使用的是其他IDE或者命令行,自行百度怎么设置代理。

设置完成后使用go env能看到当前go使用到的环境变量,可以用来检查配置是否OK。

三、使用github

如果上面两步操作后都还不能安装成功,就得使用非正常手段来安装依赖了。

包的引用情况

首先需要理解go本地的包是怎么存放,怎么引用的。

  • 如果是传统的go get下载的依赖包会存放在GOPATH/src/域名/包名 下面。
  • 如果是使用的go mod下载的依赖包会存放在GOPATH/pkg/mod/域名/包名@版本号 下面。

所以可以把包手动下载放到对应的目录下面即可。

手动下载包

对于github国内并不是完全不能访问,只是可能会比较慢,或者时常打不开,此时可以碰碰运气。

官方包都可以在这个仓库下面找到:github.com/golang

如何安装在每个包的README.md里面都会有描述:

The easiest way to install is to run go get -u http://golang.org/x/net. You can also manually git clone the repository to $GOPATH/src/http://golang.org/x/net.

大部分的依赖包都能在github里面找到对应包。

四、利用人脉

沿用上一种方案的思路,不是所有人都不能科学上网,可以寻求身边能科学上网的朋友,帮你下载包给你。

然后把GOPATH/pkg/mod

go 모드 code>는 go 1.11에 새로 추가되었습니다. 기능

Go 버전이 1.11 이상인 경우에는 go mod 패키지 관리 기능이 제공됩니다. p data-pid="2Mp6EA3a">이것은 좋은 일입니다. go mod가 활성화되어 있으면 🎜

프로젝트에서 go mod를 초기화하세요. code>를 입력한 다음 프로젝트 디렉토리에서 <code>를 사용하면 go get이 자동으로 go mod를 사용하여 패키지를 가져와서 go.mod 파일로 구성합니다 🎜

그러나 기본 소스는 해외에서 사용되므로 종속 패키지 설치가 일반적으로 느리거나 실패합니다. 🎜

따라서 프록시를 설정해야 합니다. 국내 서버에서 내보내면 속도와 안정성이 향상될 수 있습니다. 🎜

goland를 사용하는 경우 command+를 사용하여 기본 설정을 불러오고 그 안에 프록시를 설정할 수 있습니다. 🎜

🎜

Qiniu Yunjia, https://goproxy.cn에 프록시를 추천해 드리고 있는데 매우 안정적입니다. 🎜

🎜수정 후에는 반드시 터미널을 다시 열어주세요! 🎜🎜

다른 IDE 또는 명령줄을 사용하는 경우 Baidu에서 프록시를 설정하는 방법을 알아볼 수 있습니다. 🎜

설정 후 go env를 사용하여 현재 go에서 사용하는 환경 변수를 확인하면 구성이 괜찮은지 확인할 수 있습니다. 🎜

🎜3. github을 사용하세요🎜🎜

위 두 단계 후에도 설치에 성공하지 못할 경우 비정상적인 수단을 사용하여 종속 항목을 설치해야 합니다. 🎜

🎜패키지 참조 상황🎜🎜

우선 로컬 패키지가 어떻게 저장되고 참조하는지 이해해야 합니다. 🎜

  • 기존의 go get 다운로드 종속성 패키지인 경우 GOPATH/src/도메인 이름/패키지 이름 아래에 저장됩니다.
  • go mod를 사용하는 경우 다운로드한 종속성 패키지는 GOPATH/pkg/mod/도메인 이름/패키지 이름@버전 번호에 저장됩니다.

따라서 패키지를 수동으로 다운로드하여 해당 디렉터리에 넣을 수 있습니다. 🎜

🎜패키지 수동 다운로드🎜🎜

중국에서는 github에 완전히 접근이 불가능한 것은 아니지만 속도가 느리거나 열리지 않는 경우가 많습니다. 이때 당신은 행운을 시험해 볼 수 있습니다. 🎜

공식 패키지는 다음 창고에서 찾을 수 있습니다: github.com/golang 🎜

설치 방법은 각 패키지의 README.md에 설명되어 있습니다. 🎜

가장 쉬운 설치 방법은 go get -u http://golang.org/x/net을 실행하는 것입니다. 저장소를 $GOPATH/src/http://golang.org에 수동으로 git clone할 수도 있습니다. /x/net.🎜

대부분의 종속 패키지는 github에서 찾을 수 있습니다. 🎜

🎜4. 연결 사용 🎜🎜

모든 사람이 과학적으로 인터넷 서핑을 할 수는 없습니다. 과학적으로 인터넷 서핑을 할 수 있는 여러분 주변의 친구들이 여러분을 위해 패키지를 다운로드하도록 도와주세요. 🎜

그런 다음 GOPATH/pkg/mod 아래에 해당 패키지를 복사하세요. 🎜

5. go mod를 사용하세요

마지막 시나리오는 패키지 이름을 알고 문서를 통해 샘플 데모를 얻는 것입니다.

코드를 프로젝트에 직접 넣은 다음 go tidy를 사용하여 패키지 종속성을 자동으로 구성합니다. go tidy来自动规整包依赖。

一些常识

  • 1、包名就是仓库地址

比如:github.com/gin-gonic/gin

报名大都是代码所在仓库地址,大都是可以直接访问的。

  • 2、包里面的包

依赖包有一个非常好玩的地方,有时使用的包是包里面的包。

可能有点绕,但是很好理解。

比如文章开头的:golang.org/x/crypto/ssh这个包,

他就是 golang.org/x/crypto

상식

1 패키지 이름은 창고 주소입니다🎜

예: github.com/gin-gonic/gin🎜

등록은 대부분 코드가 있는 창고 주소로 이루어지며 대부분의 경우 직접 액세스할 수 있습니다. 🎜

  • 🎜2. 패키지 내의 패키지 🎜

종속 패키지에는 매우 흥미로운 점이 있습니다. 사용되는 패키지는 패키지 내의 패키지입니다. 🎜

조금 복잡할 수도 있지만 이해하기 쉽습니다. 🎜

예를 들어 기사 시작 부분에 있는 패키지: golang.org/x/crypto/ssh, 🎜

그는 golang.org/x/crypto다음 패키지입니다. 🎜🎜그래서 ssh 패키지를 직접 설치하면 패키지를 찾을 수 없는 경우가 많기 때문에 상위 레벨에 설치해야 합니다. 🎜

위 내용은 Go 언어에 종속 패키지가 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Go 언어로 타사 패키지를 사용하는 방법은 무엇입니까? Go 언어로 타사 패키지를 사용하는 방법은 무엇입니까? Jun 01, 2024 am 11:39 AM

Go에서 타사 패키지를 사용하려면 goget 명령을 사용하여 gogetgithub.com/user/package와 같은 패키지를 설치합니다. import("github.com/user/package")와 같은 패키지를 가져옵니다. 예: 인코딩/json 패키지를 사용하여 JSON 데이터 구문 분석: 설치: gogetencoding/json 가져오기: import("encoding/json") 구문 분석: json.Unmarshal([]byte(jsonString),&data)

Go 언어: 강력하고 유연한 스크립트 언어 Go 언어: 강력하고 유연한 스크립트 언어 Apr 08, 2024 am 09:57 AM

Go 언어는 동시성 지원, 메모리 안전성 및 플랫폼 간 호환성으로 잘 알려진 최신 오픈 소스 프로그래밍 언어입니다. 또한 다음과 같은 풍부한 내장 기능 및 유틸리티 세트를 제공하는 뛰어난 스크립팅 언어입니다. 동시성 지원: 스크립팅을 단순화하여 여러 작업을 동시에 수행합니다. 메모리 안전: 가비지 수집기는 메모리 누수를 방지하기 위해 사용되지 않은 메모리를 자동으로 해제합니다. 플랫폼 간 호환성: Windows, Linux, macOS 및 모바일 플랫폼에서 컴파일할 수 있습니다. 풍부한 표준 라이브러리: 파일 I/O, 네트워크 요청, 정규 표현식과 같은 일반적인 스크립트 기능을 제공합니다.

Go 언어를 사용하여 사용자 정의 유형을 정의하고 사용하는 방법은 무엇입니까? Go 언어를 사용하여 사용자 정의 유형을 정의하고 사용하는 방법은 무엇입니까? Jun 05, 2024 pm 12:41 PM

Go에서는 type 키워드(struct)를 사용하여 사용자 정의 유형을 정의할 수 있으며 명명된 필드를 포함합니다. 필드 액세스 연산자를 통해 액세스할 수 있으며 인스턴스 상태를 조작하기 위해 메서드를 첨부할 수 있습니다. 실제 애플리케이션에서는 복잡한 데이터를 구성하고 작업을 단순화하기 위해 사용자 정의 유형이 사용됩니다. 예를 들어, 학생 관리 시스템은 사용자 정의 유형인 Student를 사용하여 학생 정보를 저장하고 평균 성적 및 출석률을 계산하는 방법을 제공합니다.

Go에서 분산을 계산하는 방법 알아보기 Go에서 분산을 계산하는 방법 알아보기 Feb 23, 2024 pm 09:30 PM

Golang에서 분산을 해결하는 방법 알아보기 통계에서 분산(Variance)은 데이터 집합의 각 데이터 지점과 평균 간의 차이를 측정하는 데 사용됩니다. Golang에서는 코드를 작성하여 데이터 집합의 분산을 해결할 수 있습니다. 다음으로 Golang에서 분산 계산을 구현하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 1. 분산의 정의 분산의 계산식은 다음과 같습니다. [Var(X)=rac{

Go 언어 생태계: 최고의 라이브러리 살펴보기 Go 언어 생태계: 최고의 라이브러리 살펴보기 Apr 08, 2024 pm 06:51 PM

Go 언어 생태계는 다음을 포함하는 풍부하고 강력한 라이브러리를 제공합니다. Gin(웹 애플리케이션 구축을 위한 프레임워크) Gorm(데이터베이스 상호 작용 관리를 위한 ORM) Zap(고성능 로깅용) Viper(관리 애플리케이션 구성용) Prometheus(모니터링용) 및 경고) 이 라이브러리는 개발자가 강력하고 유지 관리가 가능한 Go 애플리케이션을 빠르고 효율적으로 구축하는 데 도움이 됩니다.

Go에서 패키지를 테스트하는 방법은 무엇입니까? Go에서 패키지를 테스트하는 방법은 무엇입니까? Jun 01, 2024 am 11:50 AM

Go 언어에 내장된 테스트 프레임워크를 사용하여 개발자는 코드에 대한 테스트를 쉽게 작성하고 실행할 수 있습니다. 테스트 파일은 _test.go로 끝나고 Test로 시작하는 테스트 함수를 포함합니다. 여기서 *testing.T 매개변수는 테스트 인스턴스를 나타냅니다. 오류 정보는 t.Error()를 사용하여 기록됩니다. gotest 명령을 실행하여 테스트를 실행할 수 있습니다. 하위 테스트를 통해 테스트 기능을 더 작은 부분으로 나누고 t.Run()을 통해 생성할 수 있습니다. 실제 사례에는 utils 패키지의 IsStringPalindrome() 함수용으로 작성된 테스트 파일이 포함되어 있으며, 이 파일은 일련의 입력 문자열과 예상 출력을 사용하여 함수의 정확성을 테스트합니다.

Android 시스템에 Go 언어 적용 Android 시스템에 Go 언어 적용 Apr 08, 2024 am 11:36 AM

Go 언어는 Android 시스템에서 널리 사용될 수 있으며 다음을 포함하여 데이터 처리 및 분석을 위한 AndroidActivities 및 서비스를 구축하는 데 사용할 수 있습니다. AndroidActivity에서 Go 언어 사용: Go 언어 라이브러리 소개, Go 언어 클래스 생성 및 AndroidManifest .xml 파일 Go 언어 클래스를 등록합니다. AndroidService에서 Go 언어 사용: Go 언어 클래스를 만들고 AndroidManifest.xml 파일에 Go 언어 클래스를 등록합니다. 데이터 처리 및 분석을 위해 Go 언어를 사용합니다. HTTP API, 동시 처리 작업을 구축하고 바이너리 데이터를 인코딩 및 디코딩하는 데 사용할 수 있습니다.

Go 언어에 종속 패키지가 있나요? Go 언어에 종속 패키지가 있나요? Apr 17, 2023 pm 04:14 PM

Go 언어에는 종속 패키지가 있습니다. 1. "go get" 명령을 사용하여 종속 패키지를 설치합니다. 2. "go mod"를 활성화한 다음 "go get"을 사용하여 패키지를 가져옵니다. 3. github에서 종속성 패키지를 수동으로 다운로드하여 해당 디렉터리에 넣습니다. 4. 해당 패키지를 "GOPATH/pkg/mod" 아래에 복사합니다. 5. 코드를 프로젝트에 직접 넣습니다. 그런 다음 "go tidy"를 사용하여 패키지 종속성을 자동으로 구성합니다.