golang包管理镜像仓库

栏目: Go · 发布时间: 7年前

内容简介:golang写代码,有个地方特别不爽:没有一个成熟的包管理机制。前文众所周知,golang的google推出的,而google又长期处于404状态;我们有时会遇到一些托管在事实上在golang 1.11版本推出go mod的同时,还推出了一个新的环境变量

golang写代码,有个地方特别不爽:没有一个成熟的包管理机制。前文 Golang官方包依赖管理工具 go mod 简明教程 里介绍了golang 1.11版本退出的go module功能,但是实际使用时还是会遇到网络的问题。

众所周知,golang的google推出的,而google又长期处于404状态;我们有时会遇到一些托管在 golang.org , k8s.gcr.io 的库,在go mod之前可以从github拖下来改下名字,但go mod之后这个方法就行不通了,影响go mod的使用。

事实上在golang 1.11版本推出go mod的同时,还推出了一个新的环境变量 GOPROXY ,它的作用类似http(s)_proxy,用于为golang代码仓库做镜像代理。

有了这个变量,我们只需要再找一个稳定可靠的镜像仓库就可以了。

jfrog提供的 GoCenter 就是这样一个镜像仓库。

使用方法非常简单,配置环境变量即可:

export GOPROXY=https://gocenter.io

以 kube-role-finder 为例,编译命令为

GOPROXY="https://gocenter.io" GO111MODULE=on go build

注意,GOPROXY开启以后,若失败不会自动回源。

GoCenter还推出了goc工具,它可以自动回源,如果你希望使用可以参考GoCenter的说明。

如果你有使用Athens私有仓库,可以将GOPROXY设置为Athens,然后将GoCenter设置为Athens的remote repository。

另外,按golang官方的 blog ,其2019年会推出一个官方的镜像服务,拭目以待吧~


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。

Clojure编程

Clojure编程

Chas Emerick、Brian Carper、Christophe Grand / 徐明明、杨寿勋 / 电子工业出版社 / 2013-3-26 / 99.00元

Clojure是一种实用的通用语言,它是传奇语言LISP的方言,可与Ruby、Python等动态语言相媲美,更以无缝Java库、服务,以及拥有JVM系统得天独厚的资源优势而胜出。本书既可以用来熟悉Clojure基础知识与常见例子,也可了解其相关的实践领域与话题,更可以看到这一JVM平台上的LISP如何帮助消除不必要的复杂性,为大家在编程实践中解决最具挑战性的问题开辟新的选择——更具灵活性,更适于W......一起来看看 《Clojure编程》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

html转js在线工具
html转js在线工具

html转js在线工具