go导包失败:$GOPATH/go.mod exists but should not
2023-7-14:其实就是没有开启ide的mod设置,但是go的环境配置里面又开启了模块,所以才导致一直有错。
2023-7-31: 新发现一种错误错误就是,在gopath
下面创建了go module项目。这两个冲突的!!!!要么单独在在gopath下建,要么在gopath之外的目录下新建一个module项目。下面的原因可能写的有点绕了。
目录结构如下:
在entry中main函数使用node的treenode结构体,一直失败,
导包语句:
import ( "fmt" "learngo/object/tree" )
解决
-
在项目下使用
go mod init 项目名
(项目中别的路径如果已经有go.mod
文件,删除),生成的module居然是项目名。。。???然后import的时候开始地址也是这里的module名!!!(PS:对于go来说,模块其实就相当于一个项目了)
-
用
go mod tidy
看有没有报错(一直报错:$GOPATH/go.mod exists but should not 。 但是能够运行程序)
注意点
- 另外goland几个设置影响的:
- 这里开了之后才会有项目库依赖!!!
- node文件包名如果改成
tree1
(跟文件夹名字不一样的话),那么在entry文件导包的时候就需要变成tree1 "learngo/object/tree"
,加一个tree1别名才能生效。。。。
- 项目路径
PROJECT PATH
这里子路径不能放到父路径上面,不然执行程序的时候还是会报$GOPATH/go.mod exists but should not.
的错误。
PS:另外注意,如果是用goland新建的一个项目。这里必须要导入项目目录,不然导包的时候会一直失败报错!!!
- 如果项目名下面有
src
目录,导包的时候不需要写!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· Qt个人项目总结 —— MySQL数据库查询与断言
2022-04-09 数据结构:优先队列