Mat*_*ias 9 go visual-studio-code
将GOPATH
变量global 设置为环境变量可以正常使用Visual Studio Code.
但是在全球范围内设置项目特定变量对我来说似乎并不是很好.考虑到你有多个Go
项目,每次你需要更改这个变量,编译,调试......等项目.
是否有可能GOPATH
在Visual Studio Code 中将变量设置为项目变量?醚settings.json
还是launch.json
?
Von*_*onC 12
(2018年第二季度:请注意,对于vgo项目,GOPATH
最终可能会弃用以支持基于项目的工作流程.这将避免GOPATH
我在两年前提出的基于项目的手动建议)
使用Go 1.11(2018年8月),GOPATH
可以选配模块.
VSCode越来越支持它:
除了vendor文件夹之外,GOPATH
每个项目仍然可以有一个.
请参见" GOPATH
来自go.inferGopath
设置 ":
GOPATH
从go.inferGopath
设置设置
go.inferGopath
会覆盖以上所有内容.
如果go.inferGopath
设置为true
,则扩展将尝试推断GOPATH
工作空间的路径,即在vscode中打开的目录.它在src
目录的路径中向上搜索,并设置GOPATH
为高于该目录的一个级别.例如,如果您的项目看起来像
/aaa/bbb/ccc/src/...
,那么打开目录/aaa/bbb/ccc/src
(或其下面的任何内容)将导致扩展程序向上搜索,src
在路径中找到组件,并将其设置为GOPATH
高于该级别的一个级别,即GOPATH=/aaa/bbb/ccc
.当您处理具有不同
GOPATH
s的不同Go项目时,此设置很有用.您可以设置为并且扩展名自动使用右侧,而不是GOPATH
在每个项目的工作区设置中设置或将所有路径设置为;/:
分隔的字符串.go.inferGopath
true
GOPATH
GOPATH
用于安装Go工具go.toolsGopath
默认情况下,所有依赖的Go工具都是
GOPATH
从上面的逻辑派生出来的.
如果它们可用PATH
,PATH
则用于定位Go工具.
如果Go工具不在您的路径中,您最终可能会在每个工具中安装相同的Go工具GOPATH
.
要防止Go工具混乱GOPATH
,请使用该go.toolsGopath
设置为Go工具提供单独的位置.第一次设置go.toolsGopath时,您必须运行
Go: Install Tools
命令,以便Go工具安装在提供的位置.
小智 7
设置workspace settings
,在窗口中:
ctrl+,
设置工作区设置:
{
"go.gopath": "d:\\gopath;E:\\src"
}
Run Code Online (Sandbox Code Playgroud)用于;
多路径
小智 5
GOPATH是您的工作区,分为
GOPATH/
|- bin/
|- pkg/
|- src/ <--- your projects are saved here
|- .../my_project1
|- .../my_project2
Run Code Online (Sandbox Code Playgroud)
通过这种分离,您无需为每个项目设置新的GOPATH。我建议您阅读如何编写Go代码
Go 1.5 添加了供应商目录,允许按项目进行依赖关系管理。
\n\n\n\n\n\n\n如果存在源目录 d/vendor,则在以 d 为根的子树中编译源文件时,如果该路径命名的目录至少包含一个文件,则 import "p" 将被解释为 import "d/vendor/p"名称以 \xe2\x80\x9c.go\xe2\x80\x9d 结尾。
\n
Go 1.6 默认启用此功能:
\n\n\n\n\n\n\nGo 1.5 引入了对由环境变量启用的 \xe2\x80\x9cvendor\xe2\x80\x9d 目录的实验性支持。在 Go 1.6 中,该功能现在默认启用。
\n
即使使用 1.6 版本,根据您使用的工具,您可能需要将GO15VENDOREXPERIMENT
环境变量设置为1
(export GO15VENDOREXPERIMENT=1
在基于 unix 的操作系统上)
归档时间: |
|
查看次数: |
19143 次 |
最近记录: |