goLang引⼊⾃定义包的⽅法
看完golang的基本语法后,为了模块化编程,试⽤了下golang的包管理,结果真踩了⼏个坑,总结⼀下吧。
⼀. 设置$GOPATH环境变量
golang和C或php不⼀样,不会⾃动查当前路径下的⽂件,必须先在$GOAPTH⾥添加⾃⼰⼯程的路径;
⼆. ⾃定义包⾥⾯对外提供的API函数,⾸字母必须⼤写
如:func api() string {return “hello api!”}则不能被包外的函数检测到;
应改为:func Api() string {return “hello api!”}
三. 包的编译和安装
包的.go⽂件必须存放在⼀个独⽴的⽂件夹下(如test)。
然后对test⽂件夹使⽤ go build 和 go install 命令:之后在$GOPATH下添加⽣成pkg⽂件夹,⽂件夹下则⽣成test.a⽂件(因此,包⽂件的⽗⽂件夹名最后和包名⼀致)
四. 包的使⽤
⽣成包的名字和包的真实名字可以不⼀致;
如⽬录结构如下:
project
>src
>test
&
<
>pkg
>XXXXXXgolang语法
>test.a
<的代码如下:
package my
func Test() string{ return "my.test"}
<的代码如下:
package my
import(
"fmt"
"test"
)
func main(){
fmt.println(my.Test()); //可见这⾥使⽤“my”和import “test”不⼀致;
}
以上这篇goLang引⼊⾃定义包的⽅法就是⼩编分享给⼤家的全部内容了,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。