当我想要仿照C语言的大程序结构,来写go语言的程序,出现下面的报错(ps:系统是windows,文本编辑器(或称IDE)是vscode)
![c59bee40e1d8c75f3fdd51eefc103564.png](https://i-blog.csdnimg.cn/blog_migrate/ca8bab125bdd359b9ddacc642d40d846.png)
然后vscode还会时不时地在右下角出现这样地提示信息
![5a6729e432ada7942f76d9b5aec7bc2a.png](https://i-blog.csdnimg.cn/blog_migrate/ab6f4e3b8cafd92dc3272002d8703f38.jpeg)
对于go语言新手的我来说有点头疼,于是我就百度了一下,发现按照李文周老师的博客的方法也不管用,以下配上我的go env
信息
![359e5508bcdf79b891a6d99d81293d51.png](https://i-blog.csdnimg.cn/blog_migrate/179144641e7d80ebfd809ea7064539a4.jpeg)
后面在思否上找到了解决办法,这儿附上链接golang 引入 本地自定义包问题,我参考了wencan大哥的回答把问题解决了。首先,我们先把 go env
中的 GO111MODULE 设置成 off
go env -w GO111MODULE=off
设置成on或者auto会略过GOPATH去找程序要运行的包,我自己的小小见解就是,当你刚开始写go程序时候,并不会导入Github上的包,像我的程序还没好到可以推送到Github上,所以关掉GO111MODULE,不会影响我的编程体验。
其次是,把闭源本地包放在 %GOPATH%src
目录下,不要是递归文件夹,包文件夹打开直接是你的导出程序,像下图
![0e73cd4bf40460f3ea4ecf456f892973.png](https://i-blog.csdnimg.cn/blog_migrate/7c0c4ee01f858655a764e70f0e05b0d9.png)
煮个栗子
在transform里面有一个程序transform.go(程序是在Github上的theWayToGo_zh电子书项目的示例程序)
![85f40293af2accbf2e62bbf525c3cecc.png](https://i-blog.csdnimg.cn/blog_migrate/2fcd28e0ad520937b5cb3baf8082e08d.png)
transform程序会调用到transform_func包里的 InFromFloat64()
函数,函数所在程序如下
![713d93411b968d9ced1b2faebb89b3e6.png](https://i-blog.csdnimg.cn/blog_migrate/84316c6c212ab75f1b94acd008c54a7e.jpeg)
再次运行看看
![16202f4e3e2442ee62ef2f3710cf6e4e.png](https://i-blog.csdnimg.cn/blog_migrate/348e7fa9f742e7b20646079548032e6f.png)
搞定!