亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何正確設置 Golang 庫?

如何正確設置 Golang 庫?

Go
長風秋雁 2022-12-05 16:56:47
我試過很多次用模塊系統設置一個真正的 go 包并將代碼存儲在pkg. 我找到的所有教程都太基礎了,在頂層創建一個帶有 go 文件存儲的模塊,我不斷地學習no Go files in /usr/local/go/github.com/me/mypackage。我嘗試了很多不同的東西,但我無法讓它正常工作......GOROOT設置為/usr/local/go。我在這里創建了一個包/usr/local/go/github.com/me/mypackage。go.modmodule github.com/me/mypackagego 1.18pkg/main.gopackage mypackage// Add is our function that sums two integersfunc Add(x, y int) (res int) {    return x + y}// Subtract subtracts two integersfunc Subtract(x, y int) (res int) {    return x - y}pkg/main_test.gopackage mypackageimport "testing"func TestAdd(t *testing.T){    got := Add(4, 6)    want := 10    if got != want {        t.Errorf("got %q, wanted %q", got, want)    }}我跑:go test我究竟做錯了什么?我發現 Go 的設置非常令人沮喪,因為像 Rust 和 NodeJS 這樣的語言/運行時具有非常友好的包管理器并且非常容易設置。我正在嘗試按照本 guidance for structuring go packages中的描述構建一個庫。
查看完整描述

1 回答

?
慕工程0101907

TA貢獻1887條經驗 獲得超5個贊

不要混淆模塊和包。一個模塊可能包含多個包。像這樣:


模塊目錄/package1_dir

模塊目錄/package2_dir

試試這個布局:


存儲庫:github.com/me/mymodule


mymodule/mypkg

mymodule/mypkg/mypkg_test.go

mymodule/mypkg/mypkg.go

mymodule/go.mod

在mypkg.go并mypkg_test.go聲明package mypkg。


否則,運行此腳本,它將為您創建正確的布局:


https://gist.github.com/udhos/695d3be51fb4c7d151b4e252cdec3c63


查看完整回答
反對 回復 2022-12-05
  • 1 回答
  • 0 關注
  • 117 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號