第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何配置 goland 以識(shí)別“mod”包?

如何配置 goland 以識(shí)別“mod”包?

Go
MMMHUHU 2023-03-21 16:02:31
我正在試用 go1.11rc1,我注意到的第一件事是 goland 不識(shí)別導(dǎo)入。goland版本公告說:“開箱即用地支持 Go 模塊(以前稱為 vgo)”有人知道怎么修這個(gè)東西嗎?問題:像“github.com/urfave/cli”這樣的包顏色為紅色,懸停文本顯示:“無法解析目錄...”導(dǎo)入的包項(xiàng)目,如“app := cli.NewApp()”中的“NewApp”,顏色為紅色,懸停文本顯示:“未解決的參考......”重現(xiàn)步驟:安裝go1.11rc1:刪除當(dāng)前安裝,安裝1.11rc1,檢查版本。在go路徑外新建一個(gè)項(xiàng)目目錄:mkdir pjg && cd pjg創(chuàng)建一個(gè)go.mod文件:go mod init github.com/stevetarver/pjg向項(xiàng)目中添加一個(gè)包:go get github.com/urfave/cligo.mod文件現(xiàn)在看起來像:module github.com/stevetarver/pjg/v1 require github.com/urfave/cli v1.20.0 // indirect創(chuàng)建main.go:package mainimport (    "fmt"    "log"    "os"    "github.com/urfave/cli")func main() {    app := cli.NewApp()    app.Name = "boom"    app.Usage = "make an explosive entrance"    app.Action = func(c *cli.Context) error {        fmt.Println("boom! I say!")        return nil    }    err := app.Run(os.Args)    if err != nil {        log.Fatal(err)    }}在 goland 中查看main.go,并將鼠標(biāo)懸停在紅色文本上以查看問題。mod包存儲(chǔ)在$GOPATH/pkg/mod/戈蘭版本:2018.2.1去版本:go1.11rc1 darwin/amd64筆記:$GOPATH設(shè)置正確 -go get將包放在正確的位置,env 中的 GOPATH 匹配 goland 首選項(xiàng)。將 goland 首選項(xiàng)設(shè)置為 Go -> GOPATH -> Module GOPATH 并/Users/starver/code/go/pkg/mod沒有解決這個(gè)問題。
查看完整描述

5 回答

?
慕桂英4014372

TA貢獻(xiàn)1871條經(jīng)驗(yàn) 獲得超13個(gè)贊

這個(gè)網(wǎng)站上的答案對(duì)我有用?;旧?,通過以下方式在 GoLand 中啟用 go 模塊:

確保在設(shè)置中啟用了 Go Modules 集成(Preferences / Settings | Go | Go Modules),并且禁用了 GOPATH 索引(Preferences / Settings | Go | GOPATH | Index entire GOPATH)。

我一這樣做,紅色進(jìn)口就消失了,一切正常。


查看完整回答
反對(duì) 回復(fù) 2023-03-21
?
慕斯王

TA貢獻(xiàn)1864條經(jīng)驗(yàn) 獲得超2個(gè)贊

GoLand 支持

最新版本的 GoLand 實(shí)現(xiàn)了對(duì) vgo 和 go 模塊的支持,但還沒有趕上 go1.11rc1 的語法變化。以防萬一它在過渡期間對(duì)某人有所幫助,我將記錄我嘗試過的事情以及他們的問題和成功。

TL;DR:不要將您的項(xiàng)目放入其中$GOPATH并將新項(xiàng)目創(chuàng)建為“Go Module (vgo)”類型,或者為現(xiàn)有項(xiàng)目打開該設(shè)置。

將 go1.11rc1 安裝為 global 后go,GoLand 中的項(xiàng)目有三個(gè)基本用例go mod......

在里面 創(chuàng)建一個(gè)新項(xiàng)目$GOPATH

  1. 創(chuàng)建一個(gè)類型為“Go Module (vgo)”的新項(xiàng)目:File -> New,選擇“Go Module (vgo)”

  2. 將您的項(xiàng)目目錄設(shè)置為內(nèi)部的內(nèi)容$GOPATH$GOPATH/src/github.com/stevetarver/insidegopath

  3. 創(chuàng)建您的main.go文件,引用您的$GOPATH.

  4. 將該包添加到您的導(dǎo)入中。

使用此處gif 中所述的go getGoLand 方式:vgo

  1. 點(diǎn)擊導(dǎo)入包。

  2. 單擊紅色檢查燈泡。

  3. 單擊“同步包...”。

  4. 失敗go: go mod -sync is now go mod tidy

使用go getGoLand嵌入式終端方式:

  1. 打開嵌入式終端。

  2. go get你的進(jìn)口。

  3. 失敗: ? go get github.com/urfave/cli go get: warning: modules disabled by GO111MODULE=auto in GOPATH/src;    ignoring go.mod;    see 'go help modules'

讓我們打開該變量并重試:

  1. 注意:終端插件首選項(xiàng)無法設(shè)置環(huán)境變量。

  2. 設(shè)置GO111MODULE=on:打開 Preferences -> Appearance & Behavior -> Path Variables,添加GO111MODULE=on.

  3. 退出終端,重試,重啟GoLand,重試,同上失敗。

  4. env | grep GO111MODULE在終端中什么也不產(chǎn)生。

  5. 注意:如果這行得通,那將是一個(gè)糟糕的解決方案——GoLand 似乎沒有為此設(shè)置每個(gè)項(xiàng)目——該變量會(huì)為所有項(xiàng)目打開,這會(huì)破壞那些尚未準(zhǔn)備好的項(xiàng)目去模塊。

  6. 根據(jù)這個(gè)答案,您可以創(chuàng)建一個(gè)自定義命令行啟動(dòng)器以包含此環(huán)境變量,但是 eeuuwww - 您將如何跟蹤何時(shí)正常啟動(dòng) GoLand 以及何時(shí)使用命令行啟動(dòng)器?

您可以GO111MODULE=on在 shell 初始化腳本中進(jìn)行設(shè)置,但這會(huì)破壞所有尚未使用 go 模塊的項(xiàng)目。

您還可以在每個(gè) go 命令前加上 env var:export GO111MODULE=on; go get github.com/urfave/cli或在您的項(xiàng)目目錄中創(chuàng)建一個(gè)goshell 腳本包裝器來為您執(zhí)行此操作。

這些都不是真正可行的解決方案,但 go 模塊的一部分要點(diǎn)是逃離可怕的 go 工作區(qū),所以繼續(xù)閱讀,它會(huì)變得更好

在外部 創(chuàng)建一個(gè)新項(xiàng)目$GOPATH

  1. 創(chuàng)建一個(gè)類型為“Go Module (vgo)”的新項(xiàng)目:File -> New,選擇“Go Module (vgo)”

  2. 將您的項(xiàng)目目錄設(shè)置為外部目錄$GOPATH

  3. 修復(fù)你的go.mod:生成的文件包含module "outsidegopath",但我們想要類似的東西module github.com/stevetarver/outsidegopath。這有點(diǎn)靠不住——GoLand 將嘗試重寫go.mod和刪除部分路徑。重復(fù)幾次,它將停止嘗試。

  4. 創(chuàng)建您的main.go文件。如果您通過 ide 創(chuàng)建它作為一個(gè) go 文件,它將包含package outsidegopath. 修復(fù)它是package main。

  5. 現(xiàn)在您可以了go get github.com/urfave/cli,它已按$GOPATH/pkg/mod預(yù)期提取。

添加對(duì)現(xiàn)有新go mod項(xiàng)目的支持:

結(jié)果證明這非常簡(jiǎn)單——在 GoLand 中使用 go 模塊的最佳方式:

  1. 打開首選項(xiàng):Go -> Go Module (vgo),勾選“Enable Go Modules (vgo) integration”

  2. 如上所述工作 - 但您可以go.mod使用go mod init module-name.


查看完整回答
反對(duì) 回復(fù) 2023-03-21
?
UYOU

TA貢獻(xiàn)1878條經(jīng)驗(yàn) 獲得超4個(gè)贊

在goland的設(shè)置中,勾選go module integration解決了我的pro。



查看完整回答
反對(duì) 回復(fù) 2023-03-21
?
www說

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超8個(gè)贊

Go 1.13(2019 年 8 月)的模塊管理應(yīng)該更容易:

環(huán)境GO111MODULE變量繼續(xù)默認(rèn)為auto,但現(xiàn)在只要當(dāng)前工作目錄包含文件或在包含文件的目錄下,該auto設(shè)置就會(huì)激活命令的模塊感知模式——即使當(dāng)前目錄在.gogo.modGOPATH/src

此更改簡(jiǎn)化了內(nèi)部現(xiàn)有代碼的遷移GOPATH/src以及模塊感知包與非模塊感知導(dǎo)入器的持續(xù)維護(hù)。

$GOPATH這意味著將不再需要所有“不要將項(xiàng)目放入其中”部分。
只要有一個(gè)go.mod文件,模塊就會(huì)被識(shí)別,從命令行或像 Goland 這樣的 IDE


查看完整回答
反對(duì) 回復(fù) 2023-03-21
?
小怪獸愛吃肉

TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超1個(gè)贊

我嘗試了下面的方法,它解決了問題。Main Menu > File (Menu) > Invalidate Caches .... 選中 Invalidate 和 Restart 的所有復(fù)選框。重啟后讓它同步,問題應(yīng)該解決了。



查看完整回答
反對(duì) 回復(fù) 2023-03-21
  • 5 回答
  • 0 關(guān)注
  • 310 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)