go import

前端之家收集整理的这篇文章主要介绍了go import前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

go import

注意:当写自己包的时候,要使用短小的不含有 _ (下划线) 的小写单词来为文件命名 。

假设我的工作目录是 $GOPATH/src/aland,下面有一个一个文件 main.gohello 目录,hello 目录下有两个文件 hello.gobye.go

  1. // hello.go
  2. package hello
  3.  
  4. func Hello() string {
  5. return "Hello"
  6. }
  1. // bye.go
  2. package hello
  3.  
  4. func Bye() string {
  5. return "Bye"
  6. }

import 的一般形式是import "包的路径或 URL 地址"

相对路径

  1. // main.go
  2. package main
  3.  
  4. import (
  5. "fmt"
  6. "./hello"
  7. )
  8.  
  9. func main() {
  10. fmt.Println(hello.Hello())
  11. fmt.Println(hello.Bye())
  12. }

还有一种方法是使用 . 来作为包的别名,形式如下:

  1. // main.go
  2. package main
  3.  
  4. import (
  5. "fmt"
  6. . "./hello"
  7. )
  8.  
  9. func main() {
  10. fmt.Println(Hello()) // 注意这里,不使用包名了
  11. fmt.Println(Bye()) // 注意这里,不使用包名了
  12. }

$GOPATH 路径

下面的写法中,import 会导入 $GOPAHT/src/aland/hello 下的所有的 .go 文件

  1. // main.go
  2. package main
  3.  
  4. import (
  5. "fmt"
  6. "aland/hello"
  7. )
  8.  
  9. func main() {
  10. fmt.Println(hello.Hello())
  11. fmt.Println(hello.Bye())
  12. }

外部包

假设现在我还有一个叫 fruits 的目录是从 github.com 下载下来的,位置是 $GOPATH/src/github.com/alandtsang/fruits
fruits 目录下有一个用来打印水果名字的 Print() 函数

目录结构如下:

  1. [root@ src]# tree
  2. ├── aland
  3. ├── hello
  4. ├── bye.go
  5. └── hello.go
  6. └── main.go
  7. ├── github.com
  8. ├── alandtsang
  9. └── fruits
  10. └── fruits.go

导入外部包代码

  1. // main.go
  2. package main
  3.  
  4. import (
  5. "aland/hello"
  6. "fmt"
  7.  
  8. "github.com/alandtsang/fruits"
  9. )
  10.  
  11. func main() {
  12. fmt.Println(hello.Hello())
  13. fmt.Println(hello.Bye())
  14. fmt.Println(fruits.Print())
  15. }

猜你在找的Go相关文章