我有一个包,我想从我的代码的另一部分访问,该包被导入的路径像github.com/my-project/service
。要使用它,我必须在github上推送代码,然后我必须更新我的go.mod,如果我在服务包上积极编码,它就不能真正工作。
我通过在本地replace github.com/my-project/service => ../service
上添加一个replace来实现本地的工作,但是如果我在服务器上推送go.mod文件,它将失败,因为../service
不存在。我知道我不应该提交replace指令,所以唯一的解决方案是记住在每次提交时注解掉replace吗?
有没有办法解决这个问题,或者我只是做错了?
1条答案
按热度按时间hfwmuf9z1#
不依赖于相对路径和替换指令,你可以为你的项目正确地设置Go模块。首先在项目的根目录中初始化Go Modules:
字符串
然后,使用完整的模块路径导入包:
型
Go会自动使用包的本地版本。