请帮帮我
答案 0 :(得分:9)
首先,Go workspace的一般结构似乎是错误的。你需要让它看起来更像这样:
D:
|-- go_projects
| |-- bin
| |-- pkg
| |-- src
| | |-- FirstSteps
| | | |-- main.go
| | | +-- util
| | | +-- myprinter.go
| | |-- SecondProject
| | |-- ThirdProject
...
其次你的import
语句似乎是空的,我不知道goglang是如何工作的,但是如果你想使用myprinter.go
文件中的任何内容,你需要导入{{1} } package,假设util
文件在顶部声明其myprinter.go
为package
。
util
当然,为了能够使用// FirstSteps/main.go
package main
import (
"FirstSteps/util"
)
func main() {
util.MyPrinterFunc()
}
中的任何内容,首先必须有一些东西......
util
编辑:对不起,我最初没有回答你的问题。由于我已经提到过错误的工作区设置,您收到错误// FirstSteps/util/myprinter.go
package util
func MyPrinterFunc() {
// do stuff...
}
。 Cannot find package 'main'
告诉Gogland您要运行的程序包在<{> 1}}目录中 relative 。因此,在正确设置wrokspace后,应将Package path
设置为$GOPATH/src
,因为该程序包的绝对路径为Package path
。如果您以后要运行FirstSteps
包,则可以将$GOPATH/src/FirstSteps
指定为util
,以便gogland能够找到它。