我在Windows 10中使用go版本go1.11.2 Windows / amd64
我在桌面上有一个名为“ GoPro”的文件夹,其中有 一个文件-main.go 一个文件夹-模块
“模块”文件夹包含 一个文件-Modules.go
文件夹结构
Desktop
|------->GoPro
|----->main.go
|----->Models
|---->Models.go
main.go
// desktop/GoPro/main.go
package main
import (
"./Models"
)
func main() {
Models.Printhello()
}
Models.go
// desktop/GoPro/Models
package Models
import "fmt"
func Printhello() {
fmt.Println("Hello")
}
如果尝试运行main.go,出现以下错误,请去确认该软件包,但说未定义。
运行main.go
命令行参数
。\ main.go:8:2:未定义:模型
该文件夹不在GOPATH中。我只是想在main.go
的子文件夹中导入包答案 0 :(得分:0)
您可以set up $GOPATH
并将库放在相对于$GOPATH
或use modules的路径中。
对于模块,您可以执行以下操作:
$ tree
.
├── go.mod
├── main.go
└── mylib
└── mylib.go
文件内容:
$ cat go.mod
module myproject.com
====
$ cat main.go
package main
import "myproject.com/mylib"
func main() {
mylib.Say()
}
====
$ cat mylib/mylib.go
package mylib
import "fmt"
func Say() {
fmt.Println("Hello from mylib")
}
P.S。使用小写字母name packages/modules