go語言調(diào)用其他包中的函數(shù)簡單示例
需求

我們想在程序的入口main.go中調(diào)用service包下的user_service.go中的函數(shù),該如何調(diào)用呢?示例如下
步驟
新建一個文件夾pkgdemo1(名字任意),通過vscode打開
然后在終端轉(zhuǎn)到該目錄下(這里我用的linux操作的,windows操作系統(tǒng)可以是使用bash或者是命令行代替,操作差別不大)

使用命令 go mod init zhu.com/project01
zhu.com相當(dāng)于java項目中的groupId,project01相當(dāng)于ArtifactId

新建一個service包并在包中創(chuàng)建user_service.go文件
package service
import "fmt"
func TestService() {
fmt.Println("這是Service函數(shù)")
}在service包外創(chuàng)建main.go程序入口文件
package main
import (
"fmt"
"zhu.com/project01/service"
)
func main() {
fmt.Println("這是main函數(shù)")
service.TestService()
}在pkgdemo1下執(zhí)行 go run .

如果不可以的話,可以在service包下先build一下

至此我們完成了極其入門的go.mod的使用
附:Go語言同一個包中不同文件之間函數(shù)調(diào)用
定義了三個文件,在運(yùn)行時發(fā)生了錯誤

錯誤

后來,經(jīng)過以下修改,在run->edit Configuration中

但是從新運(yùn)行會有一個以下錯誤

點擊 Continue Anyway程序可以正常運(yùn)行,這里可能是package的路徑填寫不正確,目前不知道怎么填寫
總結(jié)
到此這篇關(guān)于go語言調(diào)用其他包中的函數(shù)的文章就介紹到這了,更多相關(guān)go語言調(diào)用其他包函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
線上問題排查之golang使用json進(jìn)行對象copy
這篇文章主要介紹了線上問題排查之golang使用json進(jìn)行對象copy,文章圍繞golang使用json進(jìn)行對象copy的內(nèi)存溢出問題排查展開詳細(xì)內(nèi)容需要的小伙伴可以參考一下2022-06-06
在Go語言開發(fā)中實現(xiàn)高性能的分布式日志收集的方法
本文介紹了在Go語言開發(fā)中實現(xiàn)高性能分布式日志收集的關(guān)鍵步驟和考慮因素,包括日志生成與采集、日志傳輸、日志收集器的高性能網(wǎng)絡(luò)I/O、日志存儲與分析、監(jiān)控與告警系統(tǒng)、擴(kuò)展性與可維護(hù)性等方面,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2025-01-01
goland2020.2.x永久激活碼破解詳細(xì)教程親測可用(Windows Linux Mac)
這篇文章主要介紹了goland2020.2.x永久激活碼破解詳細(xì)教程親測可用(Windows Linux Mac) ,對goland激活碼注冊碼相關(guān)知識感興趣的朋友跟隨小編一起看看吧2020-11-11
go?time.Sleep睡眠指定時間實例詳解(小時級到納秒級)
golang的休眠可以使用time包中的sleep,下面這篇文章主要給大家介紹了關(guān)于go?time.Sleep睡眠指定時間(小時級到納秒級)的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11

