英文:
Goland shows os.Remove() can't be resolved?
问题
在Goland
(2022.1.3)中,使用go
(1.19.1),它无法解析os.Remove()
,但如果我改成os.RemoveAll()
,就可以了。
那么,问题出在哪里?这是Goland的一个bug吗?
(顺便说一下,我使用的是Linux操作系统,如果这有关系的话。)
截图(在Goland中):
**更新:**一个可以运行的示例代码
package main
import (
"os"
)
func main() {
os.Create("/tmp/a.txt")
os.Remove("/tmp/a.txt")
}
这段代码可以正常运行,所以我认为这是Goland的bug。
英文:
In Goland
(2022.1.3), using go
(1.19.1), it can't resolve os.Remove()
, but if I change to os.RemoveAll()
, it's ok.
I've checked go doc and source code, the function does exists.
So, what's wrong ? Is that a goland bug ?
(BTW, I'm using linux os, if that matters.)
Screenshot (in Goland):
Update: An example code that can run
package main
import (
"os"
)
func main() {
os.Create("/tmp/a.txt")
os.Remove("/tmp/a.txt")
}
The code can run without error, so I think it's goland's bug.
答案1
得分: 10
Go在Go 1.19中引入了一个新的构建标签unix
,但低于2022.2版本的GoLand不支持它。
- 将GoLand更新到2022.2.3版本。
- 或者,在“首选项/设置 | Go | 构建标签和依赖管理 | 自定义标签”中添加
unix
构建标签。
如果你使用带有Go插件的IntelliJ,请确保先将IntelliJ升级到2022.2或更高版本。它会同时提示升级插件。
英文:
Go introduces a new build tag unix
in Go 1.19, but GoLand lower than 2022.2 doesn't support it natively.
- Update GoLand to 2022.2.3.
- Alternatively, add
unix
build tag in Preferences/Settings | Go | Build Tags & Vendoring | Custom tags.
If you use IntelliJ with the Go plugin, make sure to upgrade IntelliJ to 2022.2 or above first. It will prompt to upgrade the plugins at the same time.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论