我正在尝试学习Golang,但是我有一个初学者问题。
我创建了两个文件“helloworld.go”和“greetings.go”。我正在尝试使用以下方式将Greetings.go导入helloworld.go
import (
"test/greetings/greetings"
)
但是我收到以下错误:
在以下任何位置均找不到软件包“test / greetings / greetings”:
C:\ Go \ src \ test \ greetings \ greetings(来自$ GOROOT)
C:\ work \ go-ws \ src \ test \ greetings \ greetings(来自$ GOPATH)退出
状态1
我正在使用Windows OS,我的GOPATH和GOROOT值如下:
"GOPATH": "C:/work/go-ws"
"GOROOT": "C:/Go"
我的项目结构如下所示:
C:
--work
-- go-ws
-- anlytics
-- src
-- test
-- greetings
**greetings.go**
**helloworld.go**
-- pkg
-- bin
我要去哪里错了?
最佳答案
要使用greetings.go中的“Salutation”结构,我必须将greet包附加到变量中。而不是“Salutation”,而是与greet.Salutation一起使用。
我的greetigs.go文件
package greet
import "fmt"
type Salutation struct {
Name string
Greeting string
}
...
因此,要在我的helloworld.go中使用它,请按如下所示向该变量追加问候
package main
import (
"test/greetings"
)
func main() {
var s = greet.Salutation{"Bob", "Hello"}
}
而且有效...