纯新手,感觉GOPATH这个环境变量的设计真是奇葩!

isky0824 · 2020-01-09 18:57:02 · 1348 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2020-01-09 18:57:02 的主题,其中的信息可能已经有所发展或是发生改变。

根据官方文档和网络上大部分相互抄袭的技术博客来看,我自己写的项目HelloWorld要放在GOPATH的src目录下。

问题1:这样做是强制的吗?如果不这样做会有什么问题? 问题2:为什么不能像Node.JS一样,第三方包直接放在我的HelloWorld目录下?(每个项目可以使用同一个第三方包的不同版本) 问题3:编译HelloWorld成功,但是go install 时报错:无法在GOROOT和GOPATH下找到HelloWorld.exe?

还请大家指点一二,谢谢!


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1348 次点击  
加入收藏 微博
8 回复  |  直到 2020-01-31 12:53:51
InfiniteHeung
InfiniteHeung · #1 · 5年之前
  1. go并没有强制你必须把项目放在gopath下;
  2. go不需要像js一样,但是可以每个项目使用不同的第三方包版本;
  3. go build是编译到当前项目文件夹下,go install是编译到 gopath/bin目录下;go install是编译,不是安装,只能 go install main.go ,不能install其他文件
  4. 多看看基础吧,那些互相抄袭的基本上都是1.11版本以前的,官方文档不好用吗
isky0824
isky0824 · #2 · 5年之前
InfiniteHeungInfiniteHeung #1 回复

1. go并没有强制你必须把项目放在gopath下; 2. go不需要像js一样,但是可以每个项目使用不同的第三方包版本; 3. go build是编译到当前项目文件夹下,go install是编译到 gopath/bin目录下;go install是编译,不是安装,只能 go install main.go ,不能install其他文件 4. 多看看基础吧,那些互相抄袭的基本上都是1.11版本以前的,官方文档不好用吗

明白了,非常感谢

iwhot
iwhot · #3 · 5年之前

用go mod岂不快哉?

jan-bar
jan-bar · #4 · 5年之前

go支持指定文件编译(单文件或多文件都行),指定目录编译(编译目录下所有go文件),指定package编译这三种方式 没有一定让你放到GOPATH里面,你说的这种情况一般再指定package的时候才会用到。

isky0824
isky0824 · #5 · 5年之前
iwhotiwhot #3 回复

用go mod岂不快哉?

新手,正在学习中,谢谢!

isky0824
isky0824 · #6 · 5年之前
jan-barjan-bar #4 回复

go支持指定文件编译(单文件或多文件都行),指定目录编译(编译目录下所有go文件),指定package编译这三种方式 没有一定让你放到GOPATH里面,你说的这种情况一般再指定package的时候才会用到。

好的,多谢指点!

kiwi-yan
kiwi-yan · #7 · 5年之前
iwhotiwhot #3 回复

用go mod岂不快哉?

岂不美哉

lu569368
lu569368 · #8 · 5年之前

www.topgoer.com 是一个不错的go语言文档,可以看看

添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传