goland 设置 go sdk 只能选择本地吗?有没有破解之法?

最近在使用 goland 做开发的时候遇到一个问题,我大概描述一下发生的原因:

之前开发的一个项目(本地开发环境是mac),用到 golang syscall 这个包,由于更换开发环境,现在本地开发环境是 windows,由于 windows 系统和 unix 系统 go 的 sdk 不是完全一致,现在就出现了如下的问题

goland 设置 go sdk 只能选择本地吗?有没有破解之法?
ide 会提示方法不存在,我这个程序最终会跑在 docker 容器内,所以运行没有问题,现在唯一的问题是这个报错提示非常难受,我看了官方的 在goland中使用docker开发 的系列文章,但是没有提到如何解决操作系统不一致导致的代码提示问题如何解决。

比如 PhpStorm,在选择 php 解释器的时候可以选择远程的 php
goland 设置 go sdk 只能选择本地吗?有没有破解之法?

但是在 goland 中,只能选择本地的 go sdk

goland 设置 go sdk 只能选择本地吗?有没有破解之法?

想请教一下,这个代码提示问题无解吗?

最佳答案

在设置里切换到 linux 就行了

file

1年前 评论
yxuefeng (作者) 1年前
Jeffrey (楼主) 1年前
讨论数量: 5

利用条件编译,写两个文件,一个xxx_windows.go,一个xxx_unix.go,前一个贴假的实现,后一个是才是真正的代码,windows下goland会读取windows后缀的文件做代码提示,其他平台同理

//xxx_windows.go
// 空实现体
func foo() {
}

//xxx_unix.go
func foo() {
     syscall.ForkExec() ...
}
1年前 评论
Jeffrey (楼主) 1年前

在设置里切换到 linux 就行了

file

1年前 评论
yxuefeng (作者) 1年前
Jeffrey (楼主) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!