我正在使用Circle CI来测试我的项目。该项目是一个简单的Go应用程序,由几个包和一个main.go文件组成。在我的项目中引用包时,我只需在代码中将它们作为“projectName / packageName”导入。这在本地工作正常,但是,当我推送到git并且它在Circle CI上构建时,我得到以下错误。
package crypto-compare-go / handlers:无法识别的导入路径 “crypto-compare-go / handlers”(导入路径不以。开头) 主机名)
我通过将github.com/myGitUsername/projectName添加到我的本地包导入来修复此问题,这意味着当我在本地开发时如果我更改了项目中的一个包,我必须推送到git,然后拉即使它们都在同一个父项目文件夹下,也能够使用它们。这似乎是一个缓慢,非常低效的过程。
之前有没有人对Circle CI有这个问题?
答案 0 :(得分:1)
我通过将github.com/myGitUsername/projectName添加到我的本地软件包导入来修复此问题,这意味着当我在本地开发时如果我更改了项目中的一个软件包,我必须推送到git,然后拉,以便能够使用它们,即使它们都在同一个父项目文件夹下。这似乎是一个缓慢,非常低效的过程。
不。你弄错了。你的go将使用本地$GOPATH/src/github.com/myGitUsername/projectName
目录进行编译。只有在运行go get -u <package path>
时才能访问github.com。它记录在How to Write Go Code。
请注意,您不需要将代码发布到远程存储库 在你建立它之前。组织代码只是一个好习惯 好像你有一天会发布它。在实践中,您可以选择任何 任意路径名,只要它对标准库是唯一的 和更大的围棋生态系统。