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 相关文章推荐
goland 清除所有的默认设置操作
Apr 28 Golang
浅谈Golang 嵌套 interface 的赋值问题
Apr 29 Golang
goland设置颜色和字体的操作
May 05 Golang
解决goland 导入项目后import里的包报红问题
May 06 Golang
Go遍历struct,map,slice的实现
Jun 13 Golang
Go 语言下基于Redis分布式锁的实现方式
Jun 28 Golang
Golang的继承模拟实例
Jun 30 Golang
Go语言空白表示符_的实例用法
Jul 04 Golang
golang实现浏览器导出excel文件功能
Mar 25 Golang
Golang数据类型和相互转换
Apr 12 Golang
Golang 字符串的常见操作
Apr 19 Golang
Go本地测试解耦任务拆解及沟通详解Go本地测试的思路沟通的重要性总结
Jun 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显示搜索引擎来的关键词
2014/02/13 PHP
Laravel 5框架学习之环境与配置
2015/04/08 PHP
详解php魔术方法(Magic methods)的使用方法
2016/02/14 PHP
PHP通过引用传递参数用法分析
2016/12/01 PHP
PHP判断json格式是否正确的实现代码
2017/09/20 PHP
JavaScript 打地鼠游戏代码说明
2010/10/12 Javascript
通过JS自动隐藏手机浏览器的地址栏实现原理与代码
2013/01/02 Javascript
JavaScript加强之自定义callback示例
2013/09/21 Javascript
javascript页面动态显示时间变化示例代码
2013/12/18 Javascript
jquery删除ID为sNews的tr元素的内容
2014/04/10 Javascript
详解js产生对象的3种基本方式(工厂模式,构造函数模式,原型模式)
2017/01/09 Javascript
AngularJS的ng-repeat指令与scope继承关系实例详解
2017/01/21 Javascript
jQuery实现字符串全部替换的方法【推荐】
2017/03/09 Javascript
jquery事件与绑定事件
2017/03/16 Javascript
vue2组件之select2调用的示例代码
2017/10/12 Javascript
vue绑定事件后获取绑定事件中的this方法
2018/09/15 Javascript
从0搭建vue-cli4脚手架
2020/06/17 Javascript
详解JavaScript编程中的window与window.screen对象
2015/10/26 Python
Python ftp上传文件
2016/02/13 Python
利用ctypes提高Python的执行速度
2016/09/09 Python
Python使用combinations实现排列组合的方法
2018/11/13 Python
python多任务及返回值的处理方法
2019/01/22 Python
matplotlib实现区域颜色填充
2019/03/18 Python
Python常用数据类型之间的转换总结
2019/09/06 Python
python KNN算法实现鸢尾花数据集分类
2019/10/24 Python
python按照list中字典的某key去重的示例代码
2020/10/13 Python
python中lower函数实现方法及用法讲解
2020/12/23 Python
python模块内置属性概念及实例
2021/02/18 Python
html5 canvas合成海报所遇问题及解决方案总结
2017/08/03 HTML / CSS
WWE美国职业摔角官方商店:WWE Shop
2018/11/15 全球购物
介绍一下write命令
2014/08/10 面试题
写好自荐信需做到的5要点
2014/03/07 职场文书
给公司的建议书范文
2014/05/13 职场文书
文秘自荐信
2014/06/28 职场文书
年终工作总结范文
2019/06/20 职场文书
Python装饰器详细介绍
2022/03/25 Python