Go 自定义package包设置与导入操作


Posted in Golang onMay 06, 2021

package 包导入记录

首先需要知道2个值

$GOROOT

$GOPATH

第二个值可以设置多个,2个值之间使用冒号:做连接。

系统找包的时候,会去对应路径下的src中去寻找。比如,我在path目录的src目录下新建文件夹HelloWorld,其中有一个文件printHelloWorld.go。

Go 自定义package包设置与导入操作

其对应的代码为:

package HelloWorld
import "fmt"
func PrintHelloWorld(){
	fmt.Print("Hello World\r\n")
	printILoveYou()
}
// 注意,小写的 printILoveYou 是没法在外部调用的,只能在内部调用
func printILoveYou()  {
	fmt.Print("I love you\r\n")
}

在外部,非path目录下时,可以直接新建一个main包,这里声明一下main包的作用,其实就是项目的起点,比如我们上面建立的包,其实可以算是辅助包,里面编写的所有代码都是函数,要不是供内部调用的,要不就是供外部调用的,而main包,就是一个项目的入口,只要你将main包和项目相关联,就不会纠结于我需要几个main包这样的问题了。

一个目录下只能有一个 main 包,语法上是这样规定的

Go 自定义package包设置与导入操作

补充:go语言导入不了自己写的包,go语言中gopath作用

初试go语言,按照文档的要求配置好了gopath后,一直不知道干什么用。。。

然后写了第一个demo后发现倒不如不了自己写的包,然后翻回头才看gopath

结构如下

Go 自定义package包设置与导入操作

bin为生成的可执行文件

pkg为编译好的文件

src为项目源码文件

之前做java项目都会设置个workpath工作目录,其实这个src跟这个是一个意思,就是放你工程源码的地方,之前导入不进包因为项目放在自建的一个workpath下了

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Golang 相关文章推荐
go:垃圾回收GC触发条件详解
Apr 24 Golang
Go语言带缓冲的通道实现
Apr 26 Golang
Golang 如何实现函数的任意类型传参
Apr 29 Golang
golang slice元素去重操作
Apr 30 Golang
goland设置颜色和字体的操作
May 05 Golang
golang日志包logger的用法详解
May 05 Golang
go语言中GOPATH GOROOT的作用和设置方式
May 05 Golang
浅谈Go语言多态的实现与interface使用
Jun 16 Golang
golang 实用库gotable的具体使用
Jul 01 Golang
Go 中的空白标识符下划线
Mar 25 Golang
Golang流模式之grpc的四种数据流
Apr 13 Golang
Go获取两个时区的时间差
Apr 20 Golang
goland 设置project gopath的操作
解决Goland 同一个package中函数互相调用的问题
浅谈golang package中init方法的多处定义及运行顺序问题
golang switch语句的灵活写法介绍
May 06 #Golang
go语言中fallthrough的用法说明
Golang之sync.Pool使用详解
May 06 #Golang
Golang 编译成DLL文件的操作
May 06 #Golang
You might like
php把数组值转换成键的方法
2015/07/13 PHP
mac下多个php版本快速切换的方法
2016/10/09 PHP
Zend Framework入门教程之Zend_Config组件用法详解
2016/12/09 PHP
完美解决thinkphp唯一索引重复时出错的问题
2017/03/31 PHP
PHP7导出Excel报ERR_EMPTY_RESPONSE解决方法
2019/04/16 PHP
php实现分页功能的详细实例方法
2019/09/29 PHP
javascript 打开页面window.location和window.open的区别
2010/03/17 Javascript
CSS(js)限制页面显示的文本字符长度
2012/12/27 Javascript
关于JavaScript的面向对象和继承有利新手学习
2013/01/11 Javascript
Extjs4 GridPanel 的几种样式使用介绍
2013/04/18 Javascript
关闭浏览器时提示onbeforeunload事件
2013/12/25 Javascript
Google Maps API地图应用示例分享
2014/10/23 Javascript
JQuery中两个ul标签的li互相移动实现方法
2015/05/18 Javascript
JavaScript对象数组排序函数及六个用法
2015/12/23 Javascript
vue实现在表格里,取每行的id的方法
2018/03/09 Javascript
微信公众号网页分享功能开发的示例代码
2020/05/27 Javascript
Python合并多个装饰器小技巧
2015/04/28 Python
Python中easy_install 和 pip 的安装及使用
2017/06/05 Python
Python实现购物车购物小程序
2018/04/18 Python
PyQt5每天必学之带有标签的复选框
2018/04/19 Python
利用Python写一个爬妹子的爬虫
2018/06/08 Python
python xlsxwriter创建excel图表的方法
2018/06/11 Python
Python中shapefile转换geojson的示例
2019/01/03 Python
python机器学习实现决策树
2019/11/11 Python
pytorch中获取模型input/output shape实例
2019/12/30 Python
使用pytorch和torchtext进行文本分类的实例
2020/01/08 Python
python 中的命名空间,你真的了解吗?
2020/08/19 Python
css3动画 小球滚动 js控制动画暂停
2019/11/29 HTML / CSS
日本化妆品植村秀俄罗斯官方网站:Shu Uemura俄罗斯
2020/02/01 全球购物
北京捷通华声语音技术有限公司Java软件工程师笔试题
2012/04/10 面试题
毕业生自荐信
2013/12/14 职场文书
可贵的沉默教学反思
2014/02/06 职场文书
购房意向书范本
2014/04/01 职场文书
建筑工地文明标语
2014/10/09 职场文书
HTML+VUE分页实现炫酷物联网大屏功能
2021/05/27 Vue.js
css3中transform属性实现的4种功能
2021/08/07 HTML / CSS