Go/Golang 语言学习笔记总结

1.有关go语言总go install ,go build 的区别

go install 主要针对不是 package main 即不是main方法的go文件进行编译 达到相应的包中 ,而go build  只能编译main 方法的go文件 ,并且只能 在 执行go build 命令的当前目录 执行编译后的文件 ./main(linux,mac) 或者是main.exe (windows)程序。 go install 还能编译main 方法的go文件,不管在哪执行该命令 都会把执行文件生成到 $GOPATH/bin 目录下 生成一个可执行的文件

2.针对go文件打包及相应包名的引用

举个例子 假如新建立的一个项目为app

目录为 : $GOPATH/src/app

 在app目录下建立一个rtb 文件夹 //$GOPATH/src/app/rtb

        在该文件下建立一个文件 rtb_index.go // $GOPATH/src/rtb/rtb_index.go

 package rtb

import "fmt"
func Hello(){

fmt.Println("say hello")

      }  

  那么对该文件进行打包编译 ,要运行 在 $GOPATH/src/rtb 目录下 执行 go install   以后会把该文件编译到 $GOPATH/bin/${GO_ARCH}/app/的目录下 生成一个rtb.a 文件

   接下来接着创建一个文件

    vim $GOPATH/src/app/main/main.go


package main

import(

"fmt"

"app/rtb" //此处一定要注意不能把app给省落,如果是 "rtb" 那么在编译的时候 会报找不到该包,GO默认的路径实在

$GOROOT /$GOPATH 中去找你导入的包

)

func main(){

fmt.Println(" run rtb.Hello()")

rtb.Hello()

}

然后执行 go build  main.go 在改目录下生成 main ,如果执行 go install  则在 $GOPATH/bin/main 可执行程序



3.区分$GOPATH,$GOROOT 的区别

$GOPATH 是go语言的工作目录(工作环境),而不是 go安装目录,另外$GOROOT 是go语言的安装目录


本文来自:CSDN博客

感谢作者:u011156212

查看原文:Go/Golang 语言学习笔记总结

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。