解決使用gomod后goland導包報紅問題


解決使用gomod后goland導包報紅問題

項目環境:

  • ubuntu14+goland

問題詳情:

  • 在root用戶下執行go mod init {module name}使用了gomod,並編譯了項目。
  • 在root用戶下正常編譯運行都沒問題
  • 在其他用戶下使用goland導包報紅
  • 在其他用戶下使用go build 提示沒有權限permission denied

解決方案:

  • 內部包

    更換導包路徑,原來可能使用的是./這種相對路徑,換成{module name}/package1/package2的方式。

  • 外部包

    在root用戶下能編譯,在其他用戶下卻沒法編譯,於是考慮到了可能是權限問題

    首先要知道gomod包都是下載到了$GOPATH/pkg/mod下面的,使用ls -l查看下報紅的包文件夾的權限,發現是root用戶的,其他用戶沒有權限,那就簡單了,直接暴力解決:

    chmod 777 mod -R
    

    修改mod文件夾下所有文件夾的權限為所有用戶所有組可讀寫。

    問題解決。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM