解决使用gomod后goland导包报红问题
项目环境:
- ubuntu14+goland
问题详情:
- 在root用户下执行
go mod init {module name}
使用了gomod,并编译了项目。 - 在其他用户下使用goland导包报红
- 在其他用户下使用
go build
提示没有权限permission denied
解决方案:
-
内部包
更换导包路径,原来可能使用的是
./
这种相对路径,换成{module name}/package1/package2
的方式。 -
外部包
我这边在root用户下能编译,在其他用户下却没法编译,于是考虑到了可能是权限问题
首先要知道gomod包都是下载到了
$GOPATH/pkg/mod
下面的,使用ls -l
查看下mod文件夹的权限,发现是root用户的,其他用户没有权限,那就简单了,直接暴力解决:chmod 777 mod -R
修改mod文件夹下所有文件夹的权限为所有用户所有组可读写。
问题解决。