本文主要是介绍Error: Package awesomeProject contains more than one main function Consider using File kind instead,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
问题
代码旁边有个绿色的箭头,点击运行时自动弹窗出来 edit configuration 窗口 ,导致无法运行
错误:包 awesomeProject 包含多个 main 函数请考虑改用文件类型
--------------------------------------------------------------------------------------------------------------------------------
package(包)
所有代码都必须组织在 package 中
包本质上就是个”目录“,里面有很多个go文件。也可以说,包由同一目录下的多个源码文件组成
在同一个包目录下,所有的 .go文件的第一行需要添加包的定义,程序根据此来标记该源码文件的所属
package 包名
注意:代码包包名和文件目录是可以不一致的,但是相同目录下的每个源文件第一行定义的 所属包必须一致
main 包
- go语言的程序入口 mian函数所在的包
- 在 main包下,如果想要引用别的包下定义的代码,需要使用 import 关键字,也就是导包
注意:main包是程序的入口包,其他包不能使用
初次接触 Go语言,当然要从 Hello World 开始了
在项目下创建一个 Go文件,hello.go
package mainimport "fmt"//导入一个系统包fmt用来输出的func main() {fmt.Println("Hello,World!")//打印输出字符串
}
第一行的 package main 定义了包名,package main 表示一个可独立执行的程序,每个 Go应用程序都包含一个名为 main 的包
func main() 是程序开始执行的函数,所有可执行的 Go程序都必须有 main 函数(一般都是启动后执行的第一个函数)
总结:Go可执行程序可以分解成一个一个的包,main包 是必须要存在的,且 main包里必须包含 main 函数,程序的执行本质上就是运行 main包 的 main函数,main函数结束程序就结束了
---------------------------------------------------------------------------------------------------------------------------------
所以上面那个错误为何会出现呢?
因为一个 main包中必须仅有一个 main 函数,不能出现两个或者多个
goland函数不支持重载,一个包不可以有两个函数名一个的函数,如果同时出现两个函数执行入口,系统就无法选择正确的执行入口从而报错。
因为在初学阶段,在 main包中尝试了两个 go源码文件,所以会出现以上错误
通常情况下, main函数所在的包应该保持仅有一个 go源码文件就好了
解决方法
非要运行也不是不行
在源文件上点击右键运行就可以了
其他注意事项
https://learnku.com/articles/65136
这篇关于Error: Package awesomeProject contains more than one main function Consider using File kind instead的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!