溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么在VScode中編譯多個Go文件

發(fā)布時間:2021-08-31 15:11:41 來源:億速云 閱讀:218 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹了怎么在VScode中編譯多個Go文件,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

在使用VScode編譯多個go文件多次遇到過一個問題:無法找到對應(yīng)的函數(shù)。具體提示在好像是:在GOPATH和GOROOT路徑中都沒有找到該package或者該函數(shù)。但是實(shí)際上,這個函數(shù)所在的go文件就在我的工作空間。 這里簡單記錄下來。

        舉個很簡單的例子:src目錄下有個main.go文件, 引用了當(dāng)前目錄下myTools文件夾中的Add函數(shù):

怎么在VScode中編譯多個Go文件

 其中

main.go的實(shí)現(xiàn)如下:

package main
 
import (
	"fmt"
	"myTools"
)
 
func main() {
	sum := myTools.Add(1, 2)
	fmt.Println(sum)
}

 ??myTools目錄下的add.go實(shí)現(xiàn)如下:

package myTools
 
func Add(a, b int) int {
	return a + b
}

但是在編譯時,提示找不到myTools或者Add函數(shù)之類的。我確認(rèn)環(huán)境變量,包括GOPATH, GOROOT沒有什么問題,但是依然提示類似錯誤。

我最初認(rèn)為必須將自己寫的這部分go文件放到go的安裝路徑下,這樣雖然能解決問題,但是工程不太好管理呀;還會將自己的代碼與源碼混在一起,污染源碼,于情于理都不合適。當(dāng)時也查過相關(guān)資料,網(wǎng)絡(luò)好幾篇都說將這兩個同時編譯即可

go build main.go myTools/add.go

這個確實(shí)可以,但是在不同目錄時無法編譯。我也沒有研究這個問題,但是感覺也不方便,如果需要挨個指定要編譯的文件,那豈不是又要寫一個類似makefile的文件嗎???

后來,一個偶然的機(jī)會,他可以了

怎么在VScode中編譯多個Go文件

 我回想了下,剛才做過的操作:

go mod init

go mod tidy

之后,便可以通過直接編譯main.go來運(yùn)行程序了,不再需要指定編譯哪些.go文件,非常的方便。如果有人也遇到類似的問題,可以這樣試一下,希望能解決這樣的問題。

特別說明:

         我目前對Go語言正處于學(xué)習(xí)階段,感覺遇到問題比較多的就是:環(huán)境配置問題。各種安裝失敗、編譯出錯,VScode無法追蹤代碼等等奇形怪狀的問題,這里權(quán)當(dāng)做記錄了。同時希望對于后面遇到此類問題的同學(xué),能夠快速解決此類問題。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“怎么在VScode中編譯多個Go文件”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI