GOBIN not set: cannot run go install
技术问答
325 人阅读
|
0 人回复
|
2023-09-12
|
我在为我尝试 main.go 文件安装了我的自定义包。然而,当我跑的时候
4 S% N8 } @% w2 g* _( D: Zgo install custom.go1 I7 u: Q U' r4 F/ }6 X
我收到了这个错误
: {4 b" d8 {+ V$ ?go install: no install location for .go files listed on command line (GOBIN not set)
5 M) c/ M% m; h% ~ 如何设置GOBIN?
/ ^2 C- {+ v5 y1 _- Z8 U P
1 _1 ~0 h! v' p! D- g! Q; z 解决方案:
! h1 n8 r9 T9 l" n1 [/ u4 T 自走1.11和introduction of Go modules,,GOPATH不需要每个项目,默认为~/go你会全球工具/项目go get。/ f, h$ n" z7 C. t
[Go 1.162020年第一季度应默认GOBIN为 GOPATH[0\]/bin.6 R$ V& F/ m* H$ z* }
但是现在,对于任何使用模块的项目,你都不会有类似的 go install: no install location ...错误的消息。
3 O; d* D. f7 X4 W2014 年原答案:
) w2 v" N4 t v# D) v# g检查你的GOPATH变量。
+ n; v2 L7 q& ~5 m确保:
9 `1 @8 W) G; a4 C' x5 y% b你的消息来源是 GOPATH/src
3 s0 b, @8 G; _& y您bin在 GOPATH 文件夹中有一个文件夹。请参阅GOPATH 环境变量DIR”是一个GOPATH文件夹):
$ ?# U- f+ v7 y; L' Z该bin已编译的命令保存在目录中。
, e$ }% g d+ y+ f每个命令都以其源目录命名,但只有最后一个元素,而不是整个路径。也就是说,有 source in 的命令DIR/src/foo/quux安装到 中DIR/bin/quux,而不是DIR/bin/foo/quux. ” foo/” 去除前缀,以便添加DIR/bin到您的PATH获取已安装的命令。
6 Q0 h& ?9 ]5 E; \* A如果GOBIN设置环境变量,命令将安装在其命名目录中,而不是DIR/bin. GOBIN必须是绝对路径。
: ~% |, Z7 {; ]2 z例如,这个线程表示在 go build 在 以外完成时会发生什么?GOPATH/src:; n+ E4 B& @: q- m
看起来您GOPATH已设置为~/go但您运行了go install命令~/dev/go7 g8 u2 u) h, K6 B% L
参见Go Build
0 R, A6 v1 _8 q ^# t9 z' f3 W* BGo 路径包括 Go 源代码目录树列表。咨询解决方案在标准 Go 树中找不到的导入。4 ~7 q4 g; B2 a+ h }! ], _) }4 V
假如你已经做到了go build,你也可以试试一个go install(否custom.go):你想安装包,而不是单个文件。 |
|
|
|
|
|