go语言导入自定义模块(使用go.mod)

Go语言管理项目的依赖关系和模块最开始使用的 GOROOTGOPATH 分别设置Go的安装路径和项目路径,现在版本的Golang极力推荐使用 go.mod go.work ,go.mod是Go 1.11版本中引入的一种包管理机制,主要用于管理和版本控制Go项目中使用的依赖项,go.work文件是Go 1.18版本引入,主要用于解决在同一工作空间中处理多个模块的问题。

先新建一个项目文件夹,然后进入文件夹:

复制代码
cd C:\GGboy\Gay

mkdir HappyGay

cd HappyGay

在项目根目录下运行以下命令来初始化模块

复制代码
go mod init GayBoy # init后是自定义的项目名

初始化模块成功后会显示以下内容并生成 go.mod 文件

新建一个文件夹 Say ,然后在文件夹内新建 Hello.go 文件

Go 复制代码
// Hello.go

package Say // 和JVAV一样,package后是文件夹名称

import "fmt"

// 函数首字母需要大写,方便后续导入
func Hello() {
	fmt.Println("Hello, World!")
}

在新建一个 main 文件夹,在文件夹中新建main.go文件

Go 复制代码
// main.go

package main

import "GayBoy/Say" 
// GayBoy是自己在初始化模块后的go.mod文件中自己定义的项目名称

func main() {
	Say.Hello()
}

总体结构如下

cd到main包后在终端输入命令运行程序

Go 复制代码
go run main.go

输入以下命令即可构建可运行的.exe文件

Go 复制代码
go build main.go
相关推荐
阿豪只会阿巴4 分钟前
两小时快速入门 FastAPI--第一回
开发语言·python·fastapi
IT_陈寒19 分钟前
Vue的响应式竟然在这常见操作下失效了
前端·人工智能·后端
你怎么知道我是队长20 分钟前
JavaScript 事件介绍
开发语言·前端·javascript
CodeStats25 分钟前
【Linux IO】从文件描述符到硬件中断:Linux IO 系统底层完全拆解
java·linux·开发语言·io·socket
她说彩礼65万28 分钟前
Asp.net core ContenResult
后端·asp.net
着迷不白43 分钟前
Linux系统故障修复、日志管理与安全加固实战指南
开发语言·php
贺国亚1 小时前
A2A协议与Agent互操作-Task生命周期
开发语言·qt
枕星而眠1 小时前
Git仓库基础用法
大数据·git·后端·elasticsearch·全文检索
炸薯条!1 小时前
从零开始学C++(4) --类和对象
开发语言·c++·算法
渡我白衣1 小时前
打印宏与socket模块设计
java·linux·开发语言·c++·ide·人工智能·eclipse