Golang 同一个包下的不同文件的方法调用

想暗算我窗户都没有 · · 13666 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

这里记录下我踩的坑,感觉有点奇怪,因为之前写python的时候完全不用担心这些!
  • 1 下载IDEA- Goland之后,GOROOT设置的是 Go下载的路径,我下载后放在了C盘:C:/Go 而GOPATH的路径就是你项目代码的路径,可以放多个路径,中间用 ; 隔开!
  • 2 Goland用go build可执行文件的方式编译好代码,有3种方式运行,从小到大列举: File, Package, Directory 。 File只能运行单独一个文件的代码,而package能把多个文件链接起来运行,Directory是从可以控制从目录名开始运行,层级逐渐升高!
  • 3 同一个包下不同文件之间的函数调用,是不需要导包的,直接调用那个函数名就行,函数名被外部调用,必须大写!
    下面是结构目录,运行之前在 go build 里设置了以包的方式运行,还有package的输出路径,输出目录----->GoWorks.cn 这个项目名字是在目录结构里更改的. 每一项都不能填错,不然运行会报错。还有就是2个文件里的第一行必须是: package main 不然会报错!


    image.png

    image.png
  • 4 设置好了,就右键运行OK,报错一般都是 Go build 设置错误导致,仔细看下
  • 5 另外如果要在不同的包package之间调用函数的话,有另外一个方法可以试试,结构目录跟上面一样,在包外建一个sos.go的文件,project 名字为: GoWorks.cn 必须带 .cn 不然会报错!进入settings 设置下Go Modules !


    image.png
  • 6 设置好了以后,在终端输入命令: go mod init GoWorks.cn (项目名)这个时候在目录里会生成一个文件


    image.png
  • 7 接下来直接导包就能调用另一个package下的函数了 ,注意看下 Go build 的设置,以package 的形式运行,package path就输入: GoWorks.cn(项目名). 如果运行报错了,就重新启动下Goland !


    image.png
  • 8 注意这里面有个坑,同一个package下的文件里,不能互相调用,因为现在已经被外部的文件调用了,而且同一个package里的文件里的第一行 package model (写包名) 写其他的会报错,调用同目录下的其他文件的函数也会报错! 虽然这种方式比较麻烦,肯定还有其他简单的方法才对,后面再更新下

有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:想暗算我窗户都没有

查看原文:Golang 同一个包下的不同文件的方法调用

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

13666 次点击  ∙  1 赞  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传