在Golang中找不到导入的软件包

时间:2018-08-17 11:40:39

标签: go

我正在尝试学习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操作系统,我的GOPATH和GOROOT值如下:

"GOPATH": "C:/work/go-ws"
"GOROOT": "C:/Go"

我的项目结构如下:

C:
--work
   -- go-ws
      -- anlytics
          -- src
              -- test
                  -- greetings
                       **greetings.go**
                  **helloworld.go**
          -- pkg
          -- bin

我要去哪里错了?

1 个答案:

答案 0 :(得分:0)

要使用greetings.go中的“ Salutation”结构,我必须将greet包附加到变量中。您可以使用greet.Salutation代替“ 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"}
}

它有效...