这篇文章主要介绍了怎么在VScode中编译多个Go文件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
在使用VScode编译多个go文件多次遇到过一个问题:无法找到对应的函数。具体提示在好像是:在GOPATH和GOROOT路径中都没有找到该package或者该函数。但是实际上,这个函数所在的go文件就在我的工作空间。 这里简单记录下来。
举个很简单的例子:src目录下有个main.go文件, 引用了当前目录下myTools文件夹中的Add函数:
其中
main.go的实现如下:
package main import ( "fmt" "myTools" ) func main() { sum := myTools.Add(1, 2) fmt.Println(sum) }
❇️myTools目录下的add.go实现如下:
package myTools func Add(a, b int) int { return a + b }
但是在编译时,提示找不到myTools或者Add函数之类的。我确认环境变量,包括GOPATH, GOROOT没有什么问题,但是依然提示类似错误。
我最初认为必须将自己写的这部分go文件放到go的安装路径下,这样虽然能解决问题,但是工程不太好管理呀;还会将自己的代码与源码混在一起,污染源码,于情于理都不合适。当时也查过相关资料,网络好几篇都说将这两个同时编译即可
go build main.go myTools/add.go
这个确实可以,但是在不同目录时无法编译。我也没有研究这个问题,但是感觉也不方便,如果需要挨个指定要编译的文件,那岂不是又要写一个类似makefile的文件吗???
后来,一个偶然的机会,他可以了
我回想了下,刚才做过的操作:
go mod init
go mod tidy
之后,便可以通过直接编译main.go来运行程序了,不再需要指定编译哪些.go文件,非常的方便。如果有人也遇到类似的问题,可以这样试一下,希望能解决这样的问题。
特别说明:
我目前对Go语言正处于学习阶段,感觉遇到问题比较多的就是:环境配置问题。各种安装失败、编译出错,VScode无法追踪代码等等奇形怪状的问题,这里权当做记录了。同时希望对于后面遇到此类问题的同学,能够快速解决此类问题。
感谢你能够认真阅读完这篇文章,希望小编分享的“怎么在VScode中编译多个Go文件”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。