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语言-在mac下brew升级golang
Apr 25 Golang
golang中切片copy复制和等号复制的区别介绍
Apr 27 Golang
golang elasticsearch Client的使用详解
May 05 Golang
Golang生成Excel文档的方法步骤
Jun 09 Golang
go select编译期的优化处理逻辑使用场景分析
Jun 28 Golang
修改并编译golang源码的操作步骤
Jul 25 Golang
Golang并发操作中常见的读写锁详析
Aug 30 Golang
深入理解go slice结构
Sep 15 Golang
Go语言特点及基本数据类型使用详解
Mar 21 Golang
golang操作redis的客户端包有多个比如redigo、go-redis
Apr 14 Golang
Go语言 详解net的tcp服务
Apr 14 Golang
Golang bufio详细讲解
Apr 21 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+MySQL搭建聊天室功能实例代码
2012/08/20 PHP
php 删除cookie方法详解
2014/12/01 PHP
PHP实现简单实用的分页类代码
2016/04/08 PHP
php+mongodb判断坐标是否在指定多边形区域内的实例
2016/10/28 PHP
PHP文件与目录操作示例
2016/12/24 PHP
浅谈laravel中的关联查询with的问题
2019/10/10 PHP
JQuery 写的个性导航菜单
2009/12/24 Javascript
jQuery 点击图片跳转上一张或下一张功能的实现代码
2010/03/12 Javascript
js给网页加上背景音乐及选择音效的方法
2015/03/03 Javascript
jQuery实现商品活动倒计时
2015/10/16 Javascript
原生JS实现网络彩票投注效果
2016/09/25 Javascript
微信 java 实现js-sdk 图片上传下载完整流程
2016/10/21 Javascript
jquery-mobile表单的创建方法详解
2016/11/23 Javascript
JS公共小方法之判断对象是否为domElement的实例
2016/11/25 Javascript
jquery dataview数据视图插件使用方法
2016/12/23 Javascript
vue+vuex+axios+echarts画一个动态更新的中国地图的方法
2017/12/19 Javascript
Vue 第三方字体图标引入 Font Awesome的方法
2018/09/28 Javascript
如何封装了一个vue移动端下拉加载下一页数据的组件
2019/01/06 Javascript
Vue项目打包压缩的实现(让页面更快响应)
2020/03/10 Javascript
[35:39]完美世界DOTA2联赛PWL S2 FTD.C vs Rebirth 第二场 11.22
2020/11/24 DOTA
使用C语言扩展Python程序的简单入门指引
2015/04/14 Python
详解Python_shutil模块
2019/03/15 Python
详解numpy.meshgrid()方法使用
2019/08/01 Python
python GUI库图形界面开发之PyQt5输入对话框QInputDialog详细使用方法与实例
2020/02/27 Python
canvas学习总结三之绘制路径-线段
2019/01/31 HTML / CSS
东南亚地区最大的购物网站Lazada新加坡站点:Lazada.sg
2016/07/17 全球购物
LivingSocial英国:英国本地优惠
2019/02/22 全球购物
马来西亚户外装备商店:PTT Outdoor
2019/07/13 全球购物
伦敦香水公司:The London Perfume Company
2019/11/13 全球购物
超市国庆节促销方案
2014/02/20 职场文书
党员个人整改方案及措施
2014/10/25 职场文书
三傻大闹宝莱坞观后感
2015/06/03 职场文书
傅雷家书读书笔记
2015/06/29 职场文书
使用nginx动态转换图片大小生成缩略图
2021/03/31 Servers
MySQL infobright的安装步骤
2021/04/07 MySQL
使用opencv-python如何打开USB或者笔记本前置摄像头
2022/06/21 Python