我安装了一个名为
我有两个Go文件:
test0
的包,路径为$gopath\pkg\windows_386\hello\test0.a
,但是当我编译依赖于test0
的主包时,编译器报错:import "hello/test0": cannot find package
。为什么会出现这种情况呢?我有两个Go文件:
$gopath/src/hello.go
package main
import (
"fmt"
"hello/test0"
)
func main() {
fmt.Println(test0.Number)
}
$gopath/src/hello/test0/test0.go
package test0
const (
Number int = 255
)
首先,我执行了go install hello/test0
命令,它生成了$gopath\pkg\windows_386\hello\test0.a
文件。
然后,我删除了目录$gopath/src/hello
。
最后,我运行了go build hello.go
命令,编译器提示hello.go:5:2: import "hello/test0": cannot find package
。
.a
文件是否包含了所有所需的内容。但这是一个非常有趣的问题,我希望有人能够回答。如果不能,也许你应该向golang-nuts提问。 - Denys Séguret