Go 是否找到包但未找到内容?
我在构建go项目时遇到了一个奇怪的错误 我的结构:Go 是否找到包但未找到内容?,go,Go,我在构建go项目时遇到了一个奇怪的错误 我的结构: -$GOPATH -src -main -main.go -configuration -configuration.go 配置.go: package configuration; type Config int; func (c Config) Parse(s string) map[string]string {...} 梅因,加油 package main; import"configurat
-$GOPATH
-src
-main
-main.go
-configuration
-configuration.go
配置.go:
package configuration;
type Config int;
func (c Config) Parse(s string) map[string]string {...}
梅因,加油
package main;
import"configuration"
func main() {
var config Config;
argMap := config.parse(...);
return;
}
如果我的工作目录是$GOPATH
,我会:
go build configuration - no output, OK
go build main
imported and not used "configuration"
undefined: Config
因此找到了我的包($GOPATH/pkg
包含配置。使用正确的内容转到——我可以看到Parse
方法)并且main
导入它,但不识别它的内容
我确认问题是没有导出类型Config
?为什么会这样?argMap:=config.parse(…)代码>不起作用,因为您声明了Parse()
方法。
(如“导出的方法configuration.Parse()
”)
Config
已导出,但方法区分大小写(参见) 您试图使用未定义的包main
中的Config
,而不是configuration
中的配置(这是错误“已导入且未使用”):
第二个问题是调用未报告的parse
,而不是VonC解释的parse
var config configuration.Config
argMap := config.Parse(...);
package main
import "configuration"
func main() {
var config configuration.Config
argMap := config.Parse(...)
}