重磅!GoLand 2021.2 發(fā)布了,支持 Go1.17
大家好,我是站長 polarisxu。
剛剛 JetBrains 官方發(fā)布了 GoLand 2021.2 正式版本,一起看看都有哪些變化!
先大概預(yù)覽主要新功能:GoLand 2021.2 引入了新的 Go 模塊功能、新的格式設(shè)置選項以及對 Go 1.17 功能的支持。同時添加了新的快速修復(fù),包括幫助正確使用新的 //go:build 語法的修正。
版本控制已經(jīng)更新,改進(jìn)包括使用 GPG 密鑰簽署提交的功能。對于 Web 開發(fā)者,增加了保存代碼時在瀏覽器中自動重新加載頁面的功能,并且為 MongoDB 字段和運(yùn)算符提供了補(bǔ)全。
可以下載試用 30 天:https://www.jetbrains.com/zh-cn/go/download/。
01 Go 模塊
手動加載 go.mod 變更
在 GoLand 2021.2 中,你可以在編輯 go.mod 時控制 IDE 如何調(diào)用 go list,也可以手動加載 go.mod 文件變更。
轉(zhuǎn)到 Preferences | Build, Execution, Deployment | Build Tools,然后選擇 External changes 選項。當(dāng)您在 IDE 中編輯文件時,GoLand 將自動停止調(diào)用 go list。
對不同 Go 版本的更好支持
如果您使用的功能來自比 go.mod 文件指定版本更新的 Go 版本,GoLang 將顯示錯誤。對于數(shù)字文字和 //go:embed 語句,可以使用快速修復(fù)更改 go.mod 中的 Go 版本。
處理未使用的依賴項
replace 指令中未使用的依賴項現(xiàn)在以灰色高亮顯示。這有助于將其與錯誤區(qū)分。把鼠標(biāo)懸停在其中一條灰線上,即可看到“Unused dependency”消息。
如果需要下載未使用的模塊,按 ?+Enter 并選擇 Download all modules to the module cache 選項。您也可以下載單個模塊。
02 格式化程序
在這一版本引入了 Run gofmt on code reformat 選項。這是使 gofmt 在 GoLand 中更容易被發(fā)現(xiàn)的第一步,GoLand 具有自己的格式化程序。
選中此選項后,您可以使用快捷鍵 ?+?+L 調(diào)用兩個格式化程序,gofmt 將在 GoLand 的格式化程序之后運(yùn)行。
此選項默認(rèn)啟用,可在 Preferences | Editor | Code Style | Go 中切換。
03 更多快速修復(fù)
新的 //go:build 約束格式化支持
GoLand 新增多項快速修復(fù),可幫助您正確使用舊的 // +build 約束和新的 //go:build 語法。
第一個快速修復(fù)將根據(jù)新語法的要求把 //go:build 行移動到文件頂部。
由于在 Go 1.16 中,您既可以使用舊語法也可以同時使用兩種語法,因此除了生成 //go:build 行,還有一項快速修復(fù)可以生成 // +build 行。
一鍵啟用 cgo 支持
如果您導(dǎo)入了“C”軟件包,但忘記在項目設(shè)置中啟用 cgo 支持,GoLand 將顯示帶有 Enable cgo support 快速修復(fù)的橫幅。
還有 Navigate to cgo import 選項,可將光標(biāo)置于軟件包名稱的開頭。這可以幫助您在大項目中找到 import 語句。
04 調(diào)試器
Preview 模式現(xiàn)在也可用于應(yīng)用程序調(diào)試。允許您在一個選項卡中連續(xù)打開文件,防止在不同選項卡中打開多個文件導(dǎo)致編輯器混亂。
要在調(diào)試期間啟用 Preview 模式,請轉(zhuǎn)到 Preferences | Editor | General | Editor Tabs 勾選 Enable preview tab 復(fù)選框。
05 Go 1.17
在 Go 1.17 中,可以將切片轉(zhuǎn)換為數(shù)組指針。GoLang 不會把這些轉(zhuǎn)換標(biāo)記為錯誤。要試用 Go 1.17 功能,請將 Preferences | Go 中的 GOROOT 更改為“Go 1.17beta1”或“Go 1.17rc1”。
06 快速導(dǎo)航
從此版本開始,您可以導(dǎo)航到 internal 文件夾所含接口的實現(xiàn)。點擊間距,跳轉(zhuǎn)到實現(xiàn)。您也可以從接口的實現(xiàn)跳到接口的定義。
07 其他變更
其他更多變更可以通過這里查看:https://www.jetbrains.com/zh-cn/go/whatsnew/。現(xiàn)在還有中文 UI,對中文支持更友好。
推薦閱讀
