我要导入当前文件或打包位于同一项目中的其他文件 在目录中。我正在这样做:
import (
// "./dir1"
"/Users/my_name/my_project/dir1"
)
它们都不起作用
1) Cloning into '/Users/my_name/go/src/github.com/github_username/github_project'...
fatal: could not read Username for 'https://github.com': terminal prompts disabled
2) package /Users/my_name/my_project/dir1: unrecognized import path "/Users/my_name/my_project/dir1" (import path does not begin with hostname)
如何导入当前项目中的目录?
答案 0 :(得分:1)
导入路径不是直接的路径。它们相对于GOPATH(通过执行echo $GOPATH
找到)。
这意味着go对于存储代码的位置也很谨慎。因此,您将不得不将代码移至$GOPATH/src/my_name/my_project
。如果您将代码托管在类似github的地方,则将其移至$GOPATH/src/github.com/my_github_name/my_project
。
然后,当您导入子包时:
import "github.com/my_github_name/my_project"
请注意,这不是绝对路径。
答案 1 :(得分:0)
将words = [['CP', '0.50', '96'],
['HR', '1.00', '93'],
['HR', '1.00', '85'],
['HR', '1.00', '99'],
['CP', '0.75', '100'],
['CP', '1.00', '94'],
['HR', '1.00', '88'],
['CP', '1.00', '92']]
[x[0] for x in words]
重命名为与该目录中的包相同的名称,然后可以使用以下命令导入它:
dir1
但是不建议这样做,请改用GOPATH。如果您确实不想使用GOPATH,则可以在Go 1.11中使用Modules(但仍处于试验阶段)。
答案 2 :(得分:0)
确保您的项目位于GOPATH的 go / src 文件夹中(推荐方式)。然后像这样导入
package logic
import (
"project_name/folder_name"
)