Go和Gogland的一些提示

时间:2017-03-26 19:46:27

标签: go ide jetbrains-ide goland

大家好。我和Go和Gogland一起非常新。我有一个项目 Go project in Gogland

  1. 我选择" Run kind"作为包 - 不仅运行主文件而且运行项目。为什么找不到主包?
  2. 如何将util.myprinter包导入main.go使用它?
  3. 请帮帮我

1 个答案:

答案 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.gopackage

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能够找到它。