使用go mod導(dǎo)入本地自定義包問(wèn)題
go mod導(dǎo)入本地自定義包
1.要使用gomod首先要開(kāi)啟gomod,而不使用舊方法導(dǎo)入包
go env -w GO111MODULE=on
2.創(chuàng)建項(xiàng)目
mkdir myproject go mod init myproject
假設(shè)項(xiàng)目目錄為:
其中main包和utils包同級(jí)

3.在main包中就可以使用utils包了
package main
import (
"fmt"
//導(dǎo)入自定義包時(shí)直接加上項(xiàng)目名,因?yàn)轫?xiàng)目在init時(shí)已經(jīng)添加到go環(huán)境中了
"myproject/utils"
)
func main(){
fmt.Println("hello world")
//調(diào)用utils中的Test函數(shù)
utils.Test()
}golang如何引入自定義包
比如安裝go jdk在D盤(pán)D:\golang\bin
建議將項(xiàng)目放在D:\golang\src目錄下,這時(shí)候直接可以讀取GOPATH為D:\golang\src,此時(shí)引入自定義包路徑即為自己項(xiàng)目名稱(chēng)+具體包路徑
1.第一種比較笨的方式
比如可以在D:\golang\src下建一個(gè)項(xiàng)目my-project
my-project目錄層級(jí)如下:
- main/main.go
- utils/utils.go
main.go調(diào)用自定義包utils包的方法GetSum
package main
import (
"fmt"
"my-project/utils"
)
func main() {
var result int = utils.GetSum(100, 200)
fmt.Println(result)
}
utils.go包下可以自定義包名和函數(shù)GetSum
package utils
func GetSum(a int, b int) int {
return a + b
}
2.第二種使用go.mod的方式,項(xiàng)目比較推薦
早在終端輸入命令:go mod init 后面一般跟git項(xiàng)目路徑即可
執(zhí)行完go mod init github.com/golang/go-web命令生成 go.mod文件大致如下,后面這只是虛擬個(gè)人git項(xiàng)目地址,根據(jù)個(gè)人項(xiàng)目情況而定:
module github.com/golang/go-web go 1.20
導(dǎo)入包測(cè)試
新建一個(gè)testModule/test.go
package testModule
func CountSum(a int, b int) int {
return a + b
}在main.go入口文件引入包測(cè)試
package main
import (
"fmt"
"github.com/golang/go-web/testModule"
)
func main () {
res := testModule.CountSum(23, 88)
fmt.Println("輸入計(jì)算結(jié)果:", res)
}總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vscode中安裝Go插件和配置Go環(huán)境詳細(xì)步驟
要在VSCode中配置Go語(yǔ)言插件,首先需要確保你的電腦已經(jīng)安裝了Go環(huán)境和最新版本的VSCode,這篇文章主要給大家介紹了關(guān)于vscode中安裝Go插件和配置Go環(huán)境的相關(guān)資料,需要的朋友可以參考下2024-01-01
GO語(yǔ)言字符串處理Strings包的函數(shù)使用示例講解
這篇文章主要為大家介紹了GO語(yǔ)言字符串處理Strings包的函數(shù)使用示例講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-04-04
Go語(yǔ)言學(xué)習(xí)技巧之如何合理使用Pool
這篇文章主要給大家介紹了關(guān)于Go語(yǔ)言學(xué)習(xí)技巧之如何合理使用Pool的相關(guān)資料,Pool用于存儲(chǔ)那些被分配了但是沒(méi)有被使用,而未來(lái)可能會(huì)使用的值,以減小垃圾回收的壓力。文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。2017-12-12
Go語(yǔ)言開(kāi)發(fā)實(shí)現(xiàn)一個(gè)圖片批量壓縮工具
在日常開(kāi)發(fā)和辦公中,圖片體積過(guò)大會(huì)帶來(lái)不少困擾,本文將使用Go語(yǔ)言編寫(xiě)一個(gè)圖片批量壓縮工具,文中的示例代碼講解詳細(xì),需要的可以了解下2025-09-09
解決Golang 中使用WaitGroup的那點(diǎn)坑
這篇文章主要介紹了解決Golang 中使用WaitGroup的那點(diǎn)坑,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04
詳解如何在Golang中監(jiān)聽(tīng)多個(gè)channel
這篇文章主要為大家詳細(xì)介紹了如何在Golang中實(shí)現(xiàn)監(jiān)聽(tīng)多個(gè)channel,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-03-03
淺析Go設(shè)計(jì)模式之Facade(外觀)模式
本文將介紹外觀模式的概念、結(jié)構(gòu)和工作原理,并提供一些在Go中實(shí)現(xiàn)外觀模式的示例代碼,通過(guò)使用外觀模式,可以降低代碼的耦合度,提高代碼的可維護(hù)性和可讀性,需要的朋友可以參考下2023-05-05

