11

go.mod里面有文件root/src/abc。在root/build-scripts我有一个脚本可以做到go get。当我使用 Go 1.11 时,我没有使用 go 路径,而是使用 mod 文件root/src/abc处理其他导入,但构建脚本中使用的包会产生错误:

go: 无法确定源目录的模块路径。

有什么建议么?

4

1 回答 1

3

如果没有看到您运行的实际命令,很难肯定地说出任何事情,因为您的脚本似乎不会更改工作目录,因此go它们执行的命令不在模块的根文件夹或其任何子文件夹中。

引用命令 Go:go.mod 文件:

模块版本由源文件树定义,其根目录中有一个 go.mod 文件。当 go 命令运行时,它会先查找当前目录,然后查找后续的父目录,以找到标记主(当前)模块根目录的 go.mod。

因此,您的脚本应将工作目录更改为root/src/abc或其任何子文件夹,否则 go 命令将找不到该go.mod文件。

于 2018-10-24T21:42:39.810 回答