GO语言调用本地自定义模块

1.创建一个模块

创建文件夹greetings并进入该文件夹

bash 复制代码
mkdir greetingss && cd greetings

初始化模块

bash 复制代码
go mod init com.gotest/greetings

初始化模块文件成功

模块文件内容如下

确保已安装VSCODE前提下,运行下面命令创建greetings.go文件

在greethings.go添加下面代码:

Go 复制代码
package greetings //包名

import "fmt" //导入标准库

// 自定义函数,支持一个输入字符串参数 ,并返回字符串
func Hello(str string) string {
	// 格式化字符串
	msg := fmt.Sprintf("你好,这是Go语言格式化字符串,你传入的参数内容是 %v. ", str)
	return msg
}

然后保存

2.使用自定义的GO模块:

现在GO自定义模块已准备好了,下面在另的工程中使用上面的自定义模块:

退到greetings文件夹的上一级目录,然后创建hello文件夹并进入该文件夹

bash 复制代码
cd ..
mkdir hello && cd hello

创建新工程

在终端执行下面命令将创建go模块文件

Go 复制代码
go mod init com.gotest/hello

创建成功如下:

创建hello.go并在其中使用greetings.go模块中定义的函数

Go 复制代码
package main

import (
	"fmt"

	"com.gotest/greetings" //引用自定义模块
)

func main() {
	//使用自定义模块中的函数
	msg := greetings.Hello("外部模块调用")
	fmt.Println(msg)
}

创建hello.go并输入上面代码

最重要一步,因为包没有发布到网络,需要替换为本地可使用的包,执行下面命令

bash 复制代码
go mod edit -replace com.gotest/greetings=../greetings

更新模块依赖,执行下面命令:

bash 复制代码
go mod tidy

成功更新如下:

编译并运行,执行下面命令:

bash 复制代码
go run .

成功调用并输出:

相关推荐
AI逐月25 分钟前
解决 ComfyUI 插件安装后 Nanobind 报错问题:soxr 版本冲突原理解读
开发语言·python
清华都得不到的好学生38 分钟前
数据结构->1.稀疏数组,2.数组队列(没有取模),3.环形队列
java·开发语言·数据结构
光影少年38 分钟前
数组去重方法
开发语言·前端·javascript
我命由我1234538 分钟前
浏览器的 JS 模块化支持观察记录
开发语言·前端·javascript·css·html·ecmascript·html5
软件开发技术深度爱好者43 分钟前
用python + pillow实现GUI界面图片GUI处理工具
开发语言·python
weixin_425023001 小时前
PG JSONB 对应 Java 字段 + MyBatis-Plus 完整实战
java·开发语言·mybatis
leaves falling1 小时前
C++ string 类:从入门到模拟实现
开发语言·c++
智算菩萨1 小时前
【Tkinter】15 样式与主题深度解析:ttk 主题系统、Style 对象与跨平台样式管理实战
开发语言·python·ui·ai编程·tkinter
子非鱼@Itfuture2 小时前
`<T> T execute(...)` 泛型方法 VS `TaskExecutor<T>` 泛型接口对比分析
java·开发语言
2601_949816162 小时前
spring.profiles.active和spring.profiles.include的使用及区别说明
java·后端·spring