我是超级新人Go
并需要一些帮助。首先是$GOPATH
。似乎我的所有go
项目应该在我的机器上的同一个地方?所以我有这套:
$ echo $GOPATH
/sites/gopath
在里面,我设置了推荐的文件夹:
$ ls -a /sites/gopath
. .. bin pkg src
在src
内,我有一个名为github.com
的文件夹,其中有一个名为shamoons
的文件夹,其中有一个名为go-ann-test
的文件夹。
在其中,我有一个名为autompg
的文件夹,在其中,我有一个名为autompg.go
的文件。
唷!这是项目的很多设置!但我会假设我做错了或者它有点值得。
在我的autompg.go
中,我有:
package main
import (
"fmt"
"github.com/fxsjy/gonn"
)
func main() {
nn := gonn.DefaultNetwork(2,3,1,true)
inputs := [][]float64{
[]float64{0,0},
[]float64{0,1},
[]float64{1,0},
[]float64{1,1},
}
targets := [][]float64{
[]float64{0},//0+0=0
[]float64{1},//0+1=1
[]float64{1},//1+0=1
[]float64{2},//1+1=2
}
nn.Train(inputs,targets,1000)
for _,p := range inputs{
fmt.Println(nn.Forward(p))
}
}
当我从go install autompg
文件夹中输入go-ann-test
时,我得到:
$ go install autompg
can't load package: package autompg: cannot find package "autompg" in any of:
/usr/local/Cellar/go/1.4.1/libexec/src/autompg (from $GOROOT)
/sites/gopath/src/autompg (from $GOPATH)
那么我做错了什么?如何正确设置项目以接受外部包?
答案 0 :(得分:1)
来自go install autompg
文件夹的
go-ann-test
:
不,您需要转到go-ann-test/autompg
文件夹,然后输入go install
这会将autompg.go
编译成可执行文件autompg
并放入$GOPATH/bin
。
最后,您可以添加,提交并推送到https://github.com/shamoons/go-ann-test。
我得到了
autompg.go:35:3: no buildable Go source files in /sites/gopath/src/github.com/fxsjy/gonn
这意味着首先导入和编译go get github.com/fxsjy/gonn
需要github.com/fxsjy/gonn
。
考虑到导入的repo结构https://github.com/fxsjy/gonn,它确实需要:
cd /sites/gopath/src/github.com/fxsjy/gonn/gonn
go install
这意味着实际导入是:
import github.com/fxsjy/gonn/gonn