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

我在构建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"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(...)
}