我是 golang 的新手,在創建新模塊時遇到了一些問題我想在我的主包中添加一個 git 子模塊,這樣我就可以同時工作并提交到兩個包該模塊http_fs像這樣添加為 git 子模塊git submodule add [email protected]:xxx/http_fs.git repo/http_fs主包package mainimport "repo/http_fs"go.mod對于http_fs模塊看起來像這樣module github.com/xxx/http_fsgo 1.19當我嘗試運行主包時go run main.go出現此錯誤package repo/http_fs is not in GOROOT (/usr/local/go/src/repo/http_fs)文件結構./main.go // main package./repo/http_fs/http_fs.go更新go.mod在主包中module maingo 1.19replace github.com/xxx/http_fs v1 => ./repo/http_fs
1 回答

哈士奇WWW
TA貢獻1799條經驗 獲得超6個贊
錯誤原因
package repo/http_fs is not in GOROOT (/usr/local/go/src/repo/http_fs)
是go.mod
在/usr/local/go/src/repo/http_fs
聲明模塊github.com/xxx/http_fs
,而不是repo/http_fs
。
您需要導入與 中指定的完全相同的模塊go.mod
,即github.com/xxx/http_fs
在go.mod
您的主模塊使用replace
指令中:
replace github.com/xxx/http_fs v1.2.3 => ./repo/http_fs
Replace 指令告訴編譯器在哪里可以找到模塊的源代碼。
- 1 回答
- 0 關注
- 97 瀏覽
添加回答
舉報
0/150
提交
取消