go run main.go undefined? golang main包那点事

栏目: Go · 发布时间: 5年前

内容简介:最近把我的ss项目做了一下结构调整,一顿重构后,输入go run main.go,编译报错function undefined。额,怎么回事明明把函数定义在main.go上面的文件中啊。之前也遇到过这个问题不过没用深究,下面我们来说说go main包那点事。golang main包推荐只有一个main.go文件,这样大家就能按照习惯的方式,如果main包下有多个go文件,应该使用

最近把我的ss项目做了一下结构调整,一顿重构后,输入go run main.go,编译报错function undefined。额,怎么回事明明把函数定义在main.go上面的文件中啊。之前也遇到过这个问题不过没用深究,下面我们来说说go main包那点事。

golang main包推荐只有一个main.go文件,这样大家就能按照习惯的方式, go run main.go 或 go build main.go 来运行编译项目。

如果main包下有多个 go 文件,应该使用 go run a.go b.go c.go 或 go run *.go 来运行,编译同理。

因为mian包里,使用go run main.go,编译器只会加载main.go这个文件,不会加载main包里的其他文件,只有非main包里的文件才会通过依赖去自动加载。所以你需要输入多个文件作为参数。

golang推荐项目结构:

.
├── .gitignore
├── README.md
├── main.go
└── src
    ├── pkg1
    │   └── a.go
    ├── pkg2
    │   └── b.go
    └── pkg3
        └── c.go

如果需要编译为多个程序,可以加入cmd文件夹:

.
├── .gitignore
├── README.md
├── cmd
│   ├── cmd1
│   │   └── main.go
│   └── cmd2
│       └── main.go
└── src
    ├── pkg1
    │   └── a.go
    ├── pkg2
    │   └── b.go
    └── pkg3
        └── c.go

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Ruby on Rails实践之路

Ruby on Rails实践之路

沃哈 / 科学 / 2010-5 / 48.00元

《Ruby on Rails实践之路:写给PHP和Java开发者的书》内容简介:Ruby on Rails是基于MVC模式的Web框架,用于开发基于数据库的Web应用。Ruby on Rails中内含了所需的Web服务器WEBrick。该框架配置的数据库除了缺省的MySQL外,还可以是Oracle、SQL Server等其他数据库。《Ruby on Rails实践之路:写给PHP和Java开发者的......一起来看看 《Ruby on Rails实践之路》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具