2、Go目录结构及包管理
一、项目结构
一个Go语言项目的目录一般包含以下三个子目录:
src 目录:放置项目和库的源文件;
pkg 目录:放置编译后生成的包/库的归档文件;
bin 目录:放置编译后生成的可执行文件。
workspace
|
+--- bin // go install 安装目录。
| |
| +--- learn
|
|
+--- pkg // go build ⽣成静态库 (.a) 存放目录。
| |
| +--- darwin_amd64
| |
| +--- mylib.a
| |
| +--- mylib
| |
| +--- sublib.a
|
+--- src // 项目源码目录。
|
+--- learn
| |
| +--- main.go
|
|
+--- mylib
|
+--- mylib.go
|
+--- sublib
|
+--- sublib.g
二、main 包
所有用 Go 语言编译的可执行程序都必须有一个名叫 main 的包。 go语言的编译器会将这种名字的包编译为二进制可执行文件。
main包下肯定会有名为main()的函数,main()是程序的入口。
编译完会使用声明 main 包的代码所在的目录的目录名作为二进制可执行文件的文件名
三、导包
package main
import (
. "fmt" // 简洁模式导入
_ "fmt" // 非导入模式:仅让该包执行初始化函数
io "fmt" // 别名模式导入
)
func main() {
Println("Hello Go!")
io.Println("Hello Go!")
}
Last updated