- 创建被调用的包
mkdir test
cd test
go mod init example.com/test
cat test/test.go
package test
package test
import "fmt"
// func 定义函数
// Hello 函数名
// (name string) 可以接受一个字符串变量
// string 函数返回值是一个字符串类型
func Hello(name string) string {
//等同python message=print("hi, %s.welcome"%name)
message :=fmt.Sprintf("hi, %v. welcome!", name)
return message
}
- 创建调用的包
# 在test同一级别执行
mkdir hello
cd hello
go mod init example.com/hello
cat hello.go
//main 是go语言的执行入口
package main
import (
"fmt"
"example.com/test"
)
func main() {
// 调用了example.com/test 中的 test.Hello函数
message := test.Hello("wangendao")
fmt.Println(message)
}
- 修改hello 下的go.mod 文件,在hello目录执行
# 把 example.com/test 包指向本地的 ../test目录
go mod edit -replace example.com/test=../test
- 同步代码依赖项,在hello目录执行
go mod tidy
- 执行
go run .
标签:调用,自定义,example,go,test,message,com,hello
From: https://www.cnblogs.com/wangend/p/16967694.html