First glance in Go
moonz-wu · · 2715 次点击 · · 开始浏览Because I forgot to install the Chinese input in this OS, I have to use English input.
The first problem which I ran into is "how to import the local file in Golang"
First, it may be my fault but I really didn't see any documents say that if you want to import a local file in another Go file, you should create a folder to put the imported file. Below is my case:
I created a file said "example2.go", then typed some codes:
package example2 func Add(a, b int) int { return a + b }
I wanted to import it in another file said "example1.go"
package main import ( "fmt" "./example2" ) func main() { fmt.Println("Hello Go!") fmt.Println(example2.Add(1,2)) }
when I tried to run the example1.go file, the go runtime threw an error said "couldn't find the example2". what's the problem? Is GOPATH not set? Is example2.go not compiled? Finally, I found it is the folder structure problem. My orignal folder structure likes this
Goworkspace - pkg - src - example1.go - example2.go - bin
But Go 1.4 doesn't support import a single file as a package. So I have to put the "example2.go" in a folder said "package2"
Goworkspace - pkg - src - example1.go - package2 - example2.go - bin
then change the code
package main import ( "fmt" "package2" ) func main() { fmt.Println("Hello Go!") fmt.Println(example2.Add(1,2)) }
it works. So it means a package always refers to a folder in the Golang.
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
Because I forgot to install the Chinese input in this OS, I have to use English input.
The first problem which I ran into is "how to import the local file in Golang"
First, it may be my fault but I really didn't see any documents say that if you want to import a local file in another Go file, you should create a folder to put the imported file. Below is my case:
I created a file said "example2.go", then typed some codes:
package example2 func Add(a, b int) int { return a + b }
I wanted to import it in another file said "example1.go"
package main import ( "fmt" "./example2" ) func main() { fmt.Println("Hello Go!") fmt.Println(example2.Add(1,2)) }
when I tried to run the example1.go file, the go runtime threw an error said "couldn't find the example2". what's the problem? Is GOPATH not set? Is example2.go not compiled? Finally, I found it is the folder structure problem. My orignal folder structure likes this
Goworkspace - pkg - src - example1.go - example2.go - bin
But Go 1.4 doesn't support import a single file as a package. So I have to put the "example2.go" in a folder said "package2"
Goworkspace - pkg - src - example1.go - package2 - example2.go - bin
then change the code
package main import ( "fmt" "package2" ) func main() { fmt.Println("Hello Go!") fmt.Println(example2.Add(1,2)) }
it works. So it means a package always refers to a folder in the Golang.