回答

收藏

GOBIN not set: cannot run go install

技术问答 技术问答 326 人阅读 | 0 人回复 | 2023-09-12

我在为我尝试 main.go 文件安装了我的自定义包。然而,当我跑的时候
: Y2 i9 i; h' V7 i* M% _
    go install custom.go
    ' {; T8 {& ~: r0 w2 U1 C
我收到了这个错误9 [: x: h# w! z0 @/ t
    go install: no install location for .go files listed on command line (GOBIN not set)* X6 l+ u8 S9 M: r$ A* y+ g
如何设置GOBIN?
0 f  s% D5 b( F) Z& d$ r                                                               
( _/ O; h$ a2 k. n+ x    解决方案:                                                               
' p" X" f  h* z2 |                                                                自走1.11和introduction of Go modules,,GOPATH不需要每个项目,默认为~/go你会全球工具/项目go get。% _6 }4 x* i. y$ P8 p
[Go 1.162020年第一季度应默认GOBIN为 GOPATH[0\]/bin.
$ `  r# K6 @$ U* \5 u4 d但是现在,对于任何使用模块的项目,你都不会有类似的 go install: no install location ...错误的消息。
/ p! r' s% N6 E% J; K* N7 \4 t1 o2014 年原答案:
2 e9 g+ \" \$ j) F检查你的GOPATH变量。
8 B0 M' O5 k% c确保:
/ X1 n: u' j' {7 z" F5 @. f7 S9 M你的消息来源是 GOPATH/src
' j( b2 |0 b' P) p您bin在 GOPATH 文件夹中有一个文件夹。
请参阅GOPATH 环境变量DIR”是一个GOPATH文件夹):
4 ~; n: A: T/ E0 @7 G% f该bin已编译的命令保存在目录中。
0 p# |# l; M+ K6 D8 y: _! ~0 Q1 \每个命令都以其源目录命名,但只有最后一个元素,而不是整个路径。也就是说,有 source in 的命令DIR/src/foo/quux安装到 中DIR/bin/quux,而不是DIR/bin/foo/quux. ” foo/” 去除前缀,以便添加DIR/bin到您的PATH获取已安装的命令。6 O, S6 y0 u4 K
如果GOBIN设置环境变量,命令将安装在其命名目录中,而不是DIR/bin. GOBIN必须是绝对路径。& Y; `8 V! t8 f+ }& e
例如,这个线程表示在 go build 在 以外完成时会发生什么?GOPATH/src:9 m' T2 q2 e0 D- `9 c
看起来您GOPATH已设置为~/go但您运行了go install命令~/dev/go$ T5 F, w/ P" _- [, d
参见Go Build$ f9 m" P7 N6 c+ O
Go 路径包括 Go 源代码目录树列表。咨询解决方案在标准 Go 树中找不到的导入。) H9 {8 i3 G6 ^* b9 {
假如你已经做到了go build,你也可以试试一个go install(否custom.go):你想安装包,而不是单个文件。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则