包必须位于您的包
$GOPATH中才能导入。您提供的示例可以执行,
import"./internal/foo|bar"因为它可以进行本地导入。
internal只是这样做使得不与您的
internal目录共享通用根目录的代码无法导入包
internal。
如果将所有这些内容放入gopath中,则尝试从另一个位置(例如
OuterFolder/project2/main.go,其中
OuterFolder包含两个位置)进行导入
project,
project2然后
import"../../project/internal/foo"将失败。
import "foo"由于不满足此条件,它也会以您尝试过的方式或其他任何方式失败;
如果导入代码位于以“内部”目录的父级为根的树之外,则不允许导入包含“内部”元素的路径。
现在,如果你有路径
$GOPATH/src/project,那么你可以做的
import "foo",并
import"bar"从内部
$GOPATH/src/project/main.go和进口会成功。
project但是,下面未包含的内容将无法导入
foo或导入
bar。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)