首页 > 其他 > 详细

Go 1.11 Module 介绍

时间:2018-10-27 01:02:15      阅读:250      评论:0      收藏:0      [点我收藏+]

title: "Go 1.11 Module"
date: 2018-10-26T23:50:56+08:00
draft: false
---

Go 1.11 Module 介绍

go 1.11 发布了一种新的模式来管理go程序的依赖库,这种方式不同于vendor模型。

它主要提供下面几个重要特性:

  • 更方便的脱离GOPATH来工作(我理解是,逐渐淡化GOPATH,GOPATH一度给入门golang的新人留下很多坑)
  • 使用$GOPATH/pkg/mod来存储go mod的缓存文件,提高go get速度
  • 可选的$GOPROXY和goproxy交互机制
    • 提供公司级或局域网级私有go mod服务器
    • golang.org/x/text等老大难第三方依赖库提供缓存和提速

启用 go mod

为启用go mod,需要配置GO111MODULE环境变量:

  • GO111MODULE=off 无模块支持,go 会从 $GOPATHvendor 文件夹寻找包。
  • GO111MODULE=on 模块支持,go 会忽略 $GOPATHvendor 文件夹,只根据 go.mod 下载依赖。
  • GO111MODULE=auto$GOPATH/src 外面且根目录有 go.mod 文件时,开启模块支持。

使用GOPROXY

此处有一个开源版本的 goproxy.io

和它的github主页 github.com/goproxyio

自建GOPROXY server

Athens is a Server for Your Go Packages

项目地址 https://github.com/gomods/athens

Athens可以用来在公司内部建立自己的私有go mod服务器,
或者在公网建立一个对外公开的GOPROXY server

参考:

Go 1.11 Module 介绍

原文:https://www.cnblogs.com/morya/p/9859420.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!