Golang Go语言中 Vscode go to definition 跳到 go path 中了. 但是我想自动跳到 vendor 中, 如何实现?
Golang Go语言中 Vscode go to definition 跳到 go path 中了. 但是我想自动跳到 vendor 中, 如何实现?
go 萌新.
之前曾经是跳到 vendor 中的. 但是不知道改什么配置了现在直接跳到 go path 中影响阅读源码- - 求大佬不吝赐教.
go mod 模式下可以 go mod vendor 在项目里创建一个 vendor 目录
更多关于Golang Go语言中 Vscode go to definition 跳到 go path 中了. 但是我想自动跳到 vendor 中, 如何实现?的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
我知道大佬我创建完了 go run gobuild 什么的都没问题.
现在是我在用 vscode 看代码跳转到源码的时候, 直接往 go path 里面跳.
不方便我看源码.
go mod vendor 后需要重启 gopls 或者 reload vscode 才会「实际生效」
问了一下周围的同事, 似乎是我自己的问题. 大家都没遇到换个问题 不知道是怎么回事…
在Go语言开发中,使用Visual Studio Code(VSCode)作为IDE时,默认情况下,Go to Definition
功能会按照Go语言的模块解析顺序来查找定义。这通常意味着它首先会查看GOPATH
,然后是GOROOT
,最后才是项目中的vendor
目录。如果你的项目依赖了vendor
目录中的包,但Go to Definition
跳转到了GOPATH
,可以通过以下步骤进行调整:
-
确保Go Modules启用: 确保你的项目已经启用了Go Modules(
go.mod
文件存在)。Go Modules是Go 1.11及以后版本引入的依赖管理方式,它允许项目在vendor
目录中管理依赖。 -
配置VSCode: 在VSCode中,安装并配置
Go
扩展(由Google提供)。确保该扩展是最新的,并且已经正确设置了Go语言环境。 -
检查
go.toolsEnvVars
设置: 在VSCode的设置中(通过Ctrl+,
打开设置),搜索go.toolsEnvVars
。你可以在这里添加或修改环境变量,确保GO111MODULE=on
,这样Go工具链会优先使用go.mod
和vendor
目录。 -
重启VSCode: 更改设置后,重启VSCode以确保所有设置生效。
通过以上步骤,Go to Definition
应该能够正确地跳转到vendor
目录中的依赖定义。如果问题依旧,检查是否有其他插件或配置影响了Go语言的模块解析。