GO111MODULE=on,go get 后仍然不会编译成功!

今天编译下面这个,go get了相应的package之后还是不对,最后经过对比,发现之前照着https://goproxy.cn

export GO111MODULE=on

关于GO111MODULE

用环境变量 GO111MODULE 开启或关闭模块支持,它有三个可选值:offonauto,默认值是 auto

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

在使用模块的时候,GOPATH 是无意义的,不过它还是会把下载的依赖储存在 $GOPATH/src/mod 中,也会把 go install 的结果放在 $GOPATH/bin 中。

解决:

GO111MODULE=auto 

### 回答1: 要打开go111module=on,您可以按照以下步骤操作: 1. 确保您的Go版本是1.11或更高版本。 2. 设置环境变量GO111MODULE为on。您可以在终端中输入以下命令: export GO111MODULE=on 或者在Windows上: set GO111MODULE=on 3. 进入您的项目目录,并使用go mod init命令初始化模块。例如: go mod init example.com/myproject 这将创建一个go.mod文件,其中包含您的项目依赖项的列表。 4. 现在,您可以使用go mod命令来管理您的依赖项。例如,使用以下命令添加一个新的依赖项: go get example.com/newdependency 这将自动更新您的go.mod文件并下载新的依赖项。 希望这可以帮助您打开go111module=on。 ### 回答2: 在Go 1.11版本之后,Go语言的依赖管理机制发生了一些变化。其中最显著的变化是Go Modules的引入,更是标志着Go语言的依赖管理机制进入了一个新的时代。Go Modules功能强大,能够有效地解决Go语言依赖管理过程中遇到的诸多问题,从而使得Go语言的依赖管理更加高效和稳定。 要启用Go111module,首先需要安装Go 1.11版本或更高版本。在命令行中输入以下命令可以查看当前安装的Go版本: ``` go version ``` 安装了Go 1.11版本之后,在进行开发时,需要在项目的根目录下创建go.mod文件,这个文件是Go Modules的核心文件。在go.mod文件中,需要指定module,告诉Go这个项目的名称。 假设项目名称为module,执行以下命令可以创建go.mod文件并将模块名称设置为module: ``` go mod init module ``` 在go.mod文件中,也可以指定依赖的包和版本号,例如: ``` module module require ( github.com/gin-gonic/gin v1.6.3 golang.org/x/tools v0.0.0-20210314172051-af761d9f604f google.golang.org/protobuf v1.27.1 ) ``` 通过以上步骤,就可以打开Go111module了。在项目开发过程中,可以通过go get、go build等命令来管理依赖包和版本。Go Modules功能强大,相信会帮助Go语言的开发者更好地管理依赖、提高开发效率和代码质量。 ### 回答3: Go111module是Go语言管理依赖包的一个标志。如果设置为“on”,Go会强制使用Go Modules来管理依赖包,而如果设置为“off”,则意味着开发者想采用旧的GOPATH和vendor目录来管理依赖包。 如果要将Go111module设置为“on”,可以通过以下方法: 1. 在命令行中将环境变量GO111MODULE设置为“on” 例如,在Linux或macOS上,可以输入以下命令: export GO111MODULE=on 在Windows系统中,需要使用set命令: set GO111MODULE=on 设置完成后,在命令行中输入go version,查看当前的Go版本是否已经启用Go Modules。 2. 在go.mod文件中手动设置Go111MODULE 在项目的根目录下,打开go.mod文件,在文件头部添加以下内容: module module_name go 1.12 环境变量GO111MODULE的值将会被 go.mod 中的 mod 属性的值覆盖。因此,如果在 go.mod 文件内手动设置了 mod 属性值,那么使用与该属性相反数值的 GO111MODULE 环境变量的值也会被覆盖。 3. 在命令行中使用“go env”命令查看和修改Go111MODULE的值 在命令行中输入以下命令,可以查看Go环境变量的值: go env 在输出中可以看到GO111MODULE的值,如果值为“off”,则需要将其修改为“on”: go env -w GO111MODULE=on 这个命令将在你的当前工作环境中将Go111MODULE设置为“on”。 总之,Go111MODULE是在Go语言项目中非常重要的一个标志,它可以为开发者提供更加严密的依赖包管理方式。在进行Go语言开发时,确定好依赖包的管理方式非常重要,所以开发者应该熟练掌握Go111MODULE的设置方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值