go - 在 Golang 中找不到导入的包
问题描述
我正在尝试学习 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
我哪里错了?
解决方案
要使用 greetings.go 中的“Salutation”结构,我必须将 greet 包附加到变量中。而不是 'Salutation',你可以将它与 greet.Salutation 一起使用。
我的 greetigs.go 文件
package greet
import "fmt"
type Salutation struct {
Name string
Greeting string
}
...
所以要在我的 helloworld.go 中使用它,我将 greet 附加到变量中,如下所示
package main
import (
"test/greetings"
)
func main() {
var s = greet.Salutation{"Bob", "Hello"}
}
它有效...
推荐阅读
- spring-boot - 如何在 Spring Boot 中从 Azure SAML 2.0 应用程序获取角色或组
- jdbc - Teradata Fastload Utility 的速度应该是多少?
- angular - 一次性绑定指令不适用于 Angular 4
- go - 如何获取详细的构建日志,所有使用的包都在 GOPATH 和“go module”模式下?
- r - 当我使用 tidyverse 中的“传播”功能时,RStudio 继续崩溃
- python - Gettig 错误:对象类型...没有 len()
- c# - ASP.Net 连接字符串问题
- python - spark read.csv 错误地解析时间戳
- angular - ng2-smart-table 的异步过滤功能
- javascript - NodeJS MongoDB 查找早于当前日期的帖子