真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

go語言包管理工具 go語言 apk

Go語言有什么好用的IDE嗎

我喜歡jetbrains系列的IDE+go插件。不過我要說的是這個問題主要看你的觀點如何。

創(chuàng)新互聯(lián)建站專注于鶴山企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,商城網(wǎng)站建設(shè)。鶴山網(wǎng)站建設(shè)公司,為鶴山等地區(qū)提供建站服務(wù)。全流程按需開發(fā),專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)建站專業(yè)和態(tài)度為您提供的服務(wù)

說eclipse:

構(gòu)建方式是使用go

install

命令,每一次編譯運行都是go

install。這樣的好處就是如果你有很困棗多的包,下載下來并沒有編譯,這樣每次編譯速度是很快的。廳寬而且(?。ゞo

install

符合go官方的項目結(jié)構(gòu),官方說過了,一個go的項目應(yīng)該是以個gopath,包含src,pkg,bin三個主要目錄。所以說go

install個人認為才是主要的go編譯方式。

說eclipse的缺點:

其實eclipse插件的go編譯方式,還有目錄結(jié)構(gòu),項目結(jié)構(gòu),都是非常完美的!?。。≌娴暮芡昝?!可是,他的代碼提示,太差件!大括號都不能自動補全,gdb

32bit

64bit兼容問題,eclipseC++

沒有html

js插件,需要手動安裝,幾乎不能開箱即用。不過如果你是開發(fā)算法,數(shù)據(jù)處理,還是推薦eclipse的,畢竟其他都無關(guān)緊要。

說jetbrains:

說先說clione肯定不適合,新建項目沒有向?qū)?,?dǎo)致改成go項目各種不開心,比如圖標(biāo)對于我來說就無法接受go

lib

不是小耗子~這是次要的,重要的是各個文件都是灰色的(沒有在cmake中包含的結(jié)果),然后說剩下的,phpstorm這個不說了,估計很少有人插件按在這里,webstorm,體驗也不是很好,idea?體驗很好,可是畢竟比較重,尤其是現(xiàn)在加入了自家的K啥玩意(無意冒犯,沒記住單詞)~可是話說回來,go跟C系列IDE配合才是最佳,跟java系列一點不搭關(guān)系,用idea似乎有點格格不入,但是!idea支持新建項目向?qū)?,lib的圖標(biāo)也很清晰,最后還是選擇idea吧,期待clion的強大起來!

再說jetbrains系列缺點:

插件的構(gòu)建方式是go

buiild

這個讓人很不爽,我們幾乎不確定會構(gòu)建到什么地方去,還要每次設(shè)置一下run配置。這個可能無關(guān)緊要,畢竟不是什么大的毛病,可是go

build不能緩存.a文件,直接構(gòu)建的結(jié)果就是很多第三方包的情況下很慢!所以建議安裝包的時候手動install

一下解決這個問題。自帶代碼格式化,這個格式化跟go

格格不入,總的來說就是蛋疼,心碎,菊花癢。

最后說liteIDE:

輕量級IDE,我可以說是國人GO偉大作品典范,然而默認構(gòu)建也是go

build,項目管理方式不符合go官方標(biāo)準。代碼提示不能自動導(dǎo)入(eclipse也不能),不過如果你的項目是以包為單位的,那么另當(dāng)別論。一定很不錯,畢竟是輕量級專門針對GO的IDE!

說這些,其實還有很大一部分取決于你的項目是用vendor機制管理,還是godeps機制管理依賴關(guān)系。go不像java擁有強大的幾乎天下一統(tǒng)的maven(無意冒犯,暫不評價其他構(gòu)建套件)。

go沒有官方包倉庫。

go沒有官方包管理工具。

go沒有官方自動化構(gòu)建套件。

上面三個沒有是致命要害。導(dǎo)致民間各種百汪伏拆花齊放。

說說我的項目怎么管理

gpm

一個shell工具(windows下你可以用git的bash,或者cygwin~)

我是嚴格艷照官方推薦方式管理go項目,一個go項目一個gopath。系統(tǒng)的gopath只是為了安裝go命令,我沒有配置gobin,意義不大。

項目的依賴跟我的代碼包都在src下(非vendor)

vendor用來存放包的特殊依賴,發(fā)布項目直接把依賴包發(fā)布上去(公網(wǎng)管理則只上傳依賴關(guān)系文件

godeps文件)

資源文件等都放在src目錄同級,編譯文件放在bin,引用直接../引用。

windows上更酷的軟件安裝方式—chocolatey

Chocolatey 是一款Windows環(huán)境下的包管理工具。其依賴于微軟旗下的Nuget項目及其核心,可以將其視為Windows的apt-get。

推薦使用win8/win10操作系統(tǒng)。

以管理員身份運行CMD,執(zhí)行以下腳本:

如果你習(xí)慣用PowerShell.exe,也可以使用管理員身份運行PowerShell后執(zhí)行:

舉個栗子,你如果想安裝7Zip,你可以在命令行輸入:

就會自動安裝這個壓縮軟件。

安裝go語言,輸入:

安裝Visual Studio 2013 Ultimate這個巨無霸也是可以的:

軟件列表,可以在Chocolatey的軟件索引查到。

Chocolatey在命令行里的命令明模是 choco ,具體的命令如下:

其中的 choco install 可以簡化為 cinst

理想是美好的,然后現(xiàn)實里那無所不在的墻會讓你崩潰,所以我們要使用一個私有源來解決這個尷尬的問題。

首先我們來看一下默認的源:

可以看到系統(tǒng)中只有一個官方的源,注意一下其中的Priority,來看看官方怎么解釋的。

我們要的目的是加一個seuic內(nèi)部源,并且讓我們的源優(yōu)先級高于官方源,let's go!好奇寶寶難道不問下為什么要內(nèi)部源優(yōu)先?這里主要是要解決choco安裝依賴的問題。舉栗子:比如安裝android-sdk依賴jdk8,指定android-sdk在內(nèi)部源查數(shù)乎找,但是依賴的jdk8則會按照優(yōu)先級挨個源去找。

讓我們來檢查一下吧。

可以用下面的命令來看看我們seuic源上的東西:

cmder是windows下替代cmd的神器,多說無益,一用就知道。安裝完后win+R輸入cmder即可使用。

androidstudio依賴android-sdk和jdk8,android-sdk依賴jdk8。choco安裝時會自動安裝依賴,所以三件套都裝的話只激畢緩要cinst androidstudio -y -s"seuic"即可。這些東西不是要翻墻就是要去oracle網(wǎng)站死磕,現(xiàn)在只要一行命令輕松搞定。

vagrant更適合給開發(fā)大爺們創(chuàng)造一個統(tǒng)一的開發(fā)、測試、接近于完全隔離的環(huán)境,以及提高對高配機的閑置利用。docker更方便地解決了同一機器上的環(huán)境隔離,以及提高運維鍋們解決部署時環(huán)境依賴的效率。

delve基礎(chǔ)用法及在vscode中的使用

delve 是go語言的調(diào)猛敬試器,delve的目標(biāo)是為go提供一個簡潔、功能齊全的debug工具,delve易于調(diào)用和使用。

為了能夠編譯delve,需要安裝Go 1.10或更高版本

安裝好go后,直接go get即可安裝,更多安裝教程見:

go get github點抗 /go-delve/delve/cmd/dlv

安裝好后,在終端執(zhí)行dlv或者dlv help 會看到dlv的幫助信息,則說明安裝成功

dlv常用命令

delve的目標(biāo)是成為一個簡潔而強大的工具。但如果你不習(xí)慣在編譯語言中使用源碼調(diào)試,則可能令人困惑。本文檔將提供開始調(diào)試go程序所需的全部信息。

調(diào)試例子程序如下

├── go.mod

├── go.sum

├── main.go

├── test

└── utils

├── util.go

└── util_test.go

調(diào)試程序主要有三個文件,main.go、util.go、util_test.go,內(nèi)容如下,比較簡單,go包管理工具使用的是go module,模塊名為test

在vscode debug 的設(shè)置中配置launch.json文件

mode 設(shè)置為debug時,program的內(nèi)容${fileDirname}即可,mode 設(shè)置為exec時,program的值為二進制文件的路徑,通過設(shè)置mode的值,即可調(diào)試源碼和二進制程序(也需要有源碼)。mode模式為auto時,測試了下,vscode 并不能通過program的內(nèi)容來判斷是debug還是exec

遠程調(diào)試時,需信知談要在遠程也有源碼、二進制包和dlv工具

在遠端執(zhí)行dlv命令

dlv debug --headless --listen=:8989 --api-version=2 --accept-multiclient #用degbug方式啟動遠程應(yīng)用程序

dlv exec --headless --listen=:8989 ./test --api-version=2 --accept-multiclient # exec執(zhí)行當(dāng)前目錄下的test二進制文件

--listen:指定調(diào)試端口

--api-version:指定api版本,默認是1

--accept-multiclient:接受多個client調(diào)試

在vscode中線下好源碼,和遠端的源碼結(jié)構(gòu)一致?;鰈aunch.json配置如下:

在vscode中打好斷點后,就可以進行遠程調(diào)試了


標(biāo)題名稱:go語言包管理工具 go語言 apk
轉(zhuǎn)載注明:http://weahome.cn/article/ddpsdcc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部