重磅!GoLand 2021.2 发布了,支持 Go1.17
共 2127字,需浏览 5分钟
·
2021-07-31 20:40
大家好,我是站长 polarisxu。
刚刚 JetBrains 官方发布了 GoLand 2021.2 正式版本,一起看看都有哪些变化!
先大概预览主要新功能:GoLand 2021.2 引入了新的 Go 模块功能、新的格式设置选项以及对 Go 1.17 功能的支持。同时添加了新的快速修复,包括帮助正确使用新的 //go:build
语法的修正。
版本控制已经更新,改进包括使用 GPG 密钥签署提交的功能。对于 Web 开发者,增加了保存代码时在浏览器中自动重新加载页面的功能,并且为 MongoDB 字段和运算符提供了补全。
可以下载试用 30 天:https://www.jetbrains.com/zh-cn/go/download/。
01 Go 模块
手动加载 go.mod 变更
在 GoLand 2021.2 中,你可以在编辑 go.mod
时控制 IDE 如何调用 go list
,也可以手动加载 go.mod
文件变更。
转到 Preferences | Build, Execution, Deployment | Build Tools,然后选择 External changes 选项。当您在 IDE 中编辑文件时,GoLand 将自动停止调用 go list
。
对不同 Go 版本的更好支持
如果您使用的功能来自比 go.mod
文件指定版本更新的 Go 版本,GoLang 将显示错误。对于数字文字和 //go:embed
语句,可以使用快速修复更改 go.mod
中的 Go 版本。
处理未使用的依赖项
replace
指令中未使用的依赖项现在以灰色高亮显示。这有助于将其与错误区分。把鼠标悬停在其中一条灰线上,即可看到“Unused dependency”消息。
如果需要下载未使用的模块,按 ⌥+Enter 并选择 Download all modules to the module cache 选项。您也可以下载单个模块。
02 格式化程序
在这一版本引入了 Run gofmt on code reformat 选项。这是使 gofmt
在 GoLand 中更容易被发现的第一步,GoLand 具有自己的格式化程序。
选中此选项后,您可以使用快捷键 ⌘+⌥+L 调用两个格式化程序,gofmt
将在 GoLand 的格式化程序之后运行。
此选项默认启用,可在 Preferences | Editor | Code Style | Go 中切换。
03 更多快速修复
新的 //go:build 约束格式化支持
GoLand 新增多项快速修复,可帮助您正确使用旧的 // +build
约束和新的 //go:build
语法。
第一个快速修复将根据新语法的要求把 //go:build
行移动到文件顶部。
由于在 Go 1.16 中,您既可以使用旧语法也可以同时使用两种语法,因此除了生成 //go:build
行,还有一项快速修复可以生成 // +build
行。
一键启用 cgo 支持
如果您导入了“C”软件包,但忘记在项目设置中启用 cgo 支持,GoLand 将显示带有 Enable cgo support 快速修复的横幅。
还有 Navigate to cgo import 选项,可将光标置于软件包名称的开头。这可以帮助您在大项目中找到 import 语句。
04 调试器
Preview 模式现在也可用于应用程序调试。允许您在一个选项卡中连续打开文件,防止在不同选项卡中打开多个文件导致编辑器混乱。
要在调试期间启用 Preview 模式,请转到 Preferences | Editor | General | Editor Tabs 勾选 Enable preview tab 复选框。
05 Go 1.17
在 Go 1.17 中,可以将切片转换为数组指针。GoLang 不会把这些转换标记为错误。要试用 Go 1.17 功能,请将 Preferences | Go 中的 GOROOT 更改为“Go 1.17beta1”或“Go 1.17rc1”。
06 快速导航
从此版本开始,您可以导航到 internal
文件夹所含接口的实现。点击间距,跳转到实现。您也可以从接口的实现跳到接口的定义。
07 其他变更
其他更多变更可以通过这里查看:https://www.jetbrains.com/zh-cn/go/whatsnew/。现在还有中文 UI,对中文支持更友好。
推荐阅读