go语言每个工程是不是都要单独设置GOPATH?
go语言每个工程是不是都要单独设置GOPATH?
比如我的go项目都统一管理在d:/workspace/go_work/目录下面,该目录下有3个项目project_01,project_02,project_03:
d:/workspace/go_work/project_01
d:/workspace/go_work/project_02
d:/workspace/go_work/project_03
问题:
1、我的GOPATH是不是要设置3个,用分号隔开?像下面这样:
d:/workspace/go_work/project_01;d:/workspace/go_work/project_02;d:/workspace/go_work/project_03
2、有100个项目是不是就要在GOPATH中添加100个?
========anwser=========
GOPATH下有bin pkg src三个目录
1.你的project_01可以放在src的目录下,这样就不需要每次设置了
2.你的project_01放在任意位置,只要不在GOPATH下,使用go mod,前提是你的go版本是1.11
---------
不是,一个系统上(一个用户)只有一个gopath。
gopath/src/ 项目应该放在这里。
gopath/pkg/由go管理,存一些中间编译结果。
gopath/bin/ 用于存放软件程序,go install会将项目编译后复制到此处,然后便可以命令行直接调用。
未来go版本随着gomodule的使用,gopath即将废弃,项目不再依赖于gopath。
1个GOPATH就可以了,然后许多项目都在里面,比如我的是这样:
➜ go echo $GOPATH
/Users/xxxx/go
➜ go tree -L 2 $GOPATH
.
├── bin
│ ├── bee
│ ├── beeHello
│ ├── cobra
│ ├── dlv
│ ├── fillstruct
│ ├── geth
│ ├── geth-tps
│ ├── glide
│ ├── go-outline
│ ├── go-symbols
│ ├── gocode
│ ├── goconvey
│ ├── godef
│ ├── godoc
│ ├── golint
│ ├── gomodifytags
│ ├── gopkgs
│ ├── goplay
│ ├── gorename
│ ├── goreturns
│ ├── gotests
│ ├── govendor
│ ├── guru
│ ├── hi
│ ├── impl
│ ├── puppeth
│ └── rlpdump
├── pkg
│ └── darwin_amd64
└── src
├── awesomeProject
├── beeHello
├── github.com
├── golang.org
├── gopkg.in
├── govendor
└── sourcegraph.com
go语言每个工程是不是都要单独设置GOPATH?的更多相关文章
- nodejs选择JavaScript作为开发语言,是因为一般的开发语言的标准库都是带有IO模块的,并且通常这个 模块是阻塞性的,所以nodejs选择了没有自带IO模块的Javascript
Javascrip本身不带IO功能,nodejs选择JavaScript作为开发语言,是因为一般的开发语言的标准库都是带有IO模块的,并且通常这个 模块是阻塞性的,所以nodejs选择了没有自带IO模 ...
- 如何为基于windows验证的站点的某个页面、文件或文件夹单独设置匿名访问
在MOSS的项目中,我们经常碰到要单独为基于windows验证的站点的某个页面.文件或文件夹单独设置匿名访问即不登录就可以直接访问.比如说站点的A的某些图片或文件URL存在B站点下的文件夹下.此时访问 ...
- 为你的Visual Studio单独设置代理服务器
http://blog.sina.com.cn/s/blog_58c506600101tycn.html 最近,因为国内访问Visual Studio Online(微软的免费代码托管服务,以前叫Te ...
- 为github公开项目单独设置用户名
背景: 由于在公司git的配置是公司内自己的用户id及邮箱,如果用同样的配置在github上提交公开项目,可能造成用户名及邮箱泄露,因此对于github上的项目,最好单独设置用户名,而每次在向gith ...
- 为每一个应用程序池单独设置aspnet.config配置文件
ASP.NET2.0之后的版本号就在各Framework的根文件夹下提供了一个aspnet.config文件.这个文件用来配置全局的一些信息,可是一直以来我们都没有怎么用过. ASP.NET4.0之后 ...
- viewport 640宽的做法 针对iphone和安卓单独设置
<!DOCTYPE html> <html lang="ch"> <head> <meta charset="utf-8&quo ...
- KingbaseESV8R6如何针对表单独设置vacuum策略
背景 书接上文 KingbaseES应对表年龄增长过快导致事务回卷 ,有些特殊业务场景不能靠全局的autovacuum方法,例如大型数据库系统,频繁做update的系统,还有上文提到的做实时数据同步的 ...
- 解决每次从cmd进入sqlplus,都得重新设置pagesize、linesize的问题
https://blog.csdn.net/u012127798/article/details/34146143/ Oracle里的set零零碎碎的,这里整理归纳一下 SQL> set tim ...
- 如何为SharePoint文档库、文件夹、文件单独设置权限
在这里使用截图的方式简单描述两个问题:设置SharePoint Server文档库权限和文档库中的文件夹权限 一.设置SharePoint Server文档库权限 Figure 1 - 打开文档库后, ...
随机推荐
- .NET三层架构开发初步
转自:https://www.cnblogs.com/weilengdeyu/archive/2013/01/04/2844847.html 今天咱们来谈下三层架构.说到三层架构,搞过点程序的可能都知 ...
- vue bootstrap中modal对话框不显示遮挡打不开
使用Vue bootstrap时,点击modal却不能弹出来,被隐藏遮挡无法显示,参考下面的这个博客的说明解决了这个问题: Heap Stack Blog(pingbook.top)Vue boots ...
- 出现:Microsoft Visual C++ 14.0 is required 的解决方案
以安装pandas为例: 如:pip install scrapy 时出现: error: Microsoft Visual C++ 14.0 is required. Get it with “Mi ...
- java基础 static
参考文章: 静态导包:https://blog.csdn.net/u012338954/article/details/51010337 常量池:http://blog.sina.com.cn/s/b ...
- 2019年上海市大学生网络安全大赛两道misc WriteUp
2019年全国大学生网络安全邀请赛暨第五届上海市大学生网络安全大赛 做出了两道Misc== 签到 题干 解题过程 题干提示一直注册成功,如果注册失败也许会出现flag. 下载下来是包含010edito ...
- python3.5-ssh免输入密码过程
ssh远程批量执行命令要输密码很蛋疼,虽然有很多种方式,大概有4.5种.原理基本类似. 这里我就讲一个python的模拟登陆 模块 此刻的时间是:2015年11月19日11:11:47 ...
- Intellij 热部署插件 JRebel [转载]
原文:https://blog.csdn.net/weixin_42831477/article/details/82229436 Intellij热部署插件JRebel IDEA本身没有集成热部署工 ...
- TRex,一个基于DPDK的数据包发生器,测试仪
1. introduction TRex是cisco基于Intel dpdk开发的软件程序.推荐在CentOS/RHEL 7.6, 64bits中运行,否则connectx-4网卡不可使用. 笔者在U ...
- 在vue-cli中安装element
在vue-cli中安装elemnent-ui 的步骤 在安装vue-cli 的基础上进行安装 1.npm i element-ui -S 安装element-cli 安装之后会在项目中的node_mo ...
- Js迷宫游戏
<!DOCTYPE html> <html> <head> <title>MyHtml.html</title> </head> ...