Gopls:高级主题

本文档面向高级 gopls 用户,他们可能希望测试未发布的版本或试用特殊功能。

安装未发布的版本

要获取特定版本的 gopls(例如,测试预发布版本),请运行

$ go install golang.org/x/tools/gopls@vX.Y.Z

其中 vX.Y.Z 是所需版本。

不稳定版本

要将 gopls 更新到最新的不稳定版本,请使用以下命令。

# Create an empty go.mod file, only for tracking requirements.
cd $(mktemp -d)
go mod init gopls-unstable

# Use 'go get' to add requirements and to ensure they work together.
go get -d golang.org/x/tools/gopls@master golang.org/x/tools@master

go install golang.org/x/tools/gopls

处理 Go 源代码分发版

如果您正在处理 Go 项目本身,gopls 调用的 go 命令必须与您正在处理的源代码版本相匹配。也就是说,如果您已将 Go 项目签出到 $HOME/go,则您的 go 命令应该是您使用 make.bash 或等效命令构建的 $HOME/go/bin/go 可执行文件。

您可以通过将正确版本的 go 添加到 PATH(在 Unix 系统上为 export PATH=$HOME/go/bin:$PATH)或通过配置编辑器来实现。

要同时处理 stdcmd,请在 GOROOT/src 中添加一个 go.work 文件。

cd $(go env GOROOT)/src
go work init . cmd

请注意,您必须在 GOROOT/src 子目录内工作,因为 go 命令不识别 GOROOT/src 的父目录中的 go.work 文件(https://golang.ac.cn/issue/59429)


本文档的源代码可以在 golang.org/x/tools/gopls/doc 下找到。