go import

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

go import

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

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

// hello.go
package hello

func Hello() string {
    return "Hello"
}
// bye.go
package hello

func Bye() string {
    return "Bye"
}

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

相对路径

// main.go
package main

import (
    "fmt"
    "./hello"
)

func main() {
    fmt.Println(hello.Hello())
    fmt.Println(hello.Bye())
}

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

// main.go
package main

import (
    "fmt"
    . "./hello"
)

func main() {
    fmt.Println(Hello())  // 注意这里,不使用包名了
    fmt.Println(Bye())  // 注意这里,不使用包名了
}

$GOPATH 路径

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

// main.go
package main

import (
    "fmt"
    "aland/hello"
)

func main() {
    fmt.Println(hello.Hello())
    fmt.Println(hello.Bye())
}

外部包

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

目录结构如下:

[root@ src]# tree
├── aland
│   ├── hello
│   │   ├── bye.go
│   │   └── hello.go
│   └── main.go
├── github.com
    ├── alandtsang
        └── fruits
            └── fruits.go

导入外部包代码

// main.go
package main

import (
    "aland/hello"
    "fmt"

    "github.com/alandtsang/fruits"
)

func main() {
    fmt.Println(hello.Hello())
    fmt.Println(hello.Bye())
    fmt.Println(fruits.Print())
}

猜你在找的Go相关文章