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语言-为什么返回值为接口类型,却返回结构体
Apr 24 Golang
go语言中切片与内存复制 memcpy 的实现操作
Apr 27 Golang
golang中切片copy复制和等号复制的区别介绍
Apr 27 Golang
go语言中GOPATH GOROOT的作用和设置方式
May 05 Golang
Golang之sync.Pool使用详解
May 06 Golang
详解Go语言Slice作为函数参数的使用
Jul 02 Golang
详解Golang如何优雅的终止一个服务
Mar 21 Golang
Go 中的空白标识符下划线
Mar 25 Golang
Golang原生rpc(rpc服务端源码解读)
Apr 07 Golang
Go语言的协程上下文的几个方法和用法
Apr 11 Golang
Golang 字符串的常见操作
Apr 19 Golang
Go中使用gjson来操作JSON数据的实现
Aug 14 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
从康盛产品(discuz)提取出来的模板类
2011/06/28 PHP
PHP排序算法类实例
2015/06/17 PHP
PHP获取当前相对于域名目录的方法
2015/06/26 PHP
tp5框架无刷新分页实现方法分析
2019/09/26 PHP
Laravel 前端资源配置教程
2019/10/18 PHP
JavaScript学习笔记之获取当前目录的实现代码
2010/12/14 Javascript
jquery表格内容筛选实现思路及代码
2013/04/16 Javascript
js判断字符是否是汉字的两种方法小结
2014/01/03 Javascript
js调用打印机打印网页字体总是缩小一号的解决方法
2014/01/24 Javascript
jquery插件jSignature实现手动签名
2015/05/04 Javascript
Bootstrap CSS组件之导航条(navbar)
2016/12/17 Javascript
JS实现复制内容到剪贴板功能
2017/02/05 Javascript
在点击div中的p时,如何阻止事件冒泡
2017/02/07 Javascript
Vue中计算属性computed的示例解读
2017/07/26 Javascript
vue引入新版 vue-awesome-swiper插件填坑问题
2018/01/25 Javascript
js 图片转base64的方式(两种)
2018/04/24 Javascript
实现Vue的markdown文档可以在线运行的方法示例
2018/12/11 Javascript
vue使用Google地图的实现示例代码
2018/12/19 Javascript
微信小程序BindTap快速连续点击目标页面跳转多次问题处理
2019/04/08 Javascript
ligerUI的ligerDialog关闭刷新的方法
2019/09/27 Javascript
python求众数问题实例
2014/09/26 Python
python批量提交沙箱问题实例
2014/10/08 Python
对Python进行数据分析_关于Package的安装问题
2017/05/22 Python
python中文分词库jieba使用方法详解
2020/02/11 Python
python 元组的使用方法
2020/06/09 Python
一款恶搞头像特效的制作过程 利用css3和jquery
2014/11/21 HTML / CSS
CSS3哪些新特性值得称赞
2016/03/02 HTML / CSS
canvas 如何绘制线段的实现方法
2018/07/12 HTML / CSS
英国豪华文具和皮具配件经典老品牌:Smythson(斯迈森)
2018/04/19 全球购物
巴黎卡诗加拿大官网:Kérastase加拿大
2018/11/12 全球购物
日期和时间问题
2015/01/04 面试题
会计电算化专业应届大学生求职信
2013/10/22 职场文书
有针对性的求职自荐信
2013/11/14 职场文书
治超工作实施方案
2014/05/04 职场文书
运动会广播稿100字
2014/09/14 职场文书
国防教育标语
2014/10/08 职场文书