青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

牽著老婆滿街逛

嚴以律己,寬以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

Golang /Go調試工具delve

轉載自:http://www.jianshu.com/p/cc4621d9c0aa

原文地址:https://github.com/derekparker/delve/tree/master/Documentation

安裝

這里提供了支持的所有平臺(操作系統)上安裝Delve的說明。 請注意您必須安裝Go 1.5或更高版本。 此外如果使用Go 1.5,您必須設置GO15VENDOREXPERIMENT = 1,然后再嘗試安裝。

  • OSX
    在OSX上插入
    請使用以下步驟在OSX上構建和安裝Delve
    Via Homebrew
    如果你安裝了HomeBrew,只需運行:

    $ brew install go-delve/delve/delve

手動安裝

0) 必備條件
確保您具有正確的編譯工具鏈。
這應該是簡單的:

xcode-select --install

1)創建自簽名證書
你必須創建自簽名證書,并使用它簽署二進制文件:

  1. 打開應用程序“鑰匙串訪問”(/ Applications / Utilities / Keychain Access.app)
  2. 打開菜單 /Keychain Access/Certificate Assistant/Create a Certificate...
  3. 選擇一個名稱(在示例中為dlv-cert),將“Identity Type(身份類型)”設置為“Self Signed Root(自簽名根)”,將“Certificate Type(證書類型)”設置為“Code Signing(代碼簽名)”,然后選擇“Let me override defaults(讓我覆蓋默認值)”。 單擊“Continue(繼續)”。 您可能想將預定義的365天期間延長到3650天。
  4. 單擊“Continue(繼續)”多次,直到進入“Specify a Location For The Certificate(指定證書的位置)”頁面,然后將“Keychain to System(鑰匙串設置為系統)”。
  5. 如果您不能將證書存儲在“System(系統)”鑰匙扣中,請在“login(登錄)”鑰匙扣中創建,然后將其導出。 然后,您可以將其導入到“System(系統)”鑰匙扣。
  6. 在鑰匙串中選擇“系統”,你應該找到你的新證書。 使用證書的上下文菜單(不是公鑰或私鑰),選擇“獲取信息”,打開“信任”項,并將“代碼簽名”設置為“始終信任”。
  7. [至少在Yosemite上:]在鑰匙串中選擇類別Keys - > dlv-cert - >右鍵單擊 - > GetInfo - >Access Control (訪問控制) - >選擇“允許所有應用程序訪問此項目” - >保存更改。
  8. 您必須退出“鑰匙串訪問”應用程序,才能使用證書并通過終止當前運行的“任務門”進程重新啟動“任務門”服務。 或者,您可以重新啟動計算機。
    2)二進制安裝
    1. 在寫go程序的時候首先創建文件夾$GOPATH/src/github.com/derekparker 并且cd 到c$GOPATH/src/github.com/derekparker目錄下
    2. clone 這個項目:git clone https://github.com/derekparker/delve.git 并且cd delve

注意:如果您使用Go 1.5必須先設置GO15VENDOREXPERIMENT = 1,然后才能繼續安裝。
GO15VENDOREXPERIMENT env var只是選擇進入Go 1.5 Vendor Experiment。(1.6不需要)

所有make命令都假設一個CERT環境變量,其中包含上面創建的證書的名稱。 Makefile還假定GOPATH是單值的,不是冒號分隔的。 makefile只需要幫助促進構建和代碼簽名的過程。

  • 運行以下命令:CERT = dlv-cert make install,它將安裝二進制文件并對其進行編碼。
    有關更多信息,請參閱此安裝視頻https://www.youtube.com/watch?v=4ndjybtBg74
    說明
    在構建期間取消代碼簽名授權提示
    如果在使用自簽名證書運行make時提示您授權,請嘗試以下操作:
    • 打開應用程序“鑰匙串訪問”(/ Applications / Utilities / Keychain Access.app)
    • 雙擊與您的自簽名證書(示例中的dlv-cert)對應的私鑰
    • 選擇“Access Control(訪問控制)”選項卡
    • 單擊“始終允許這些應用程序訪問”下的[+],然后從Finder對話框中選擇/ usr / bin / codesign
    • 點擊“(Save changes)保存更改”按鈕
    • 消除“Developer tools access(開發工具訪問)”提示運行delve

如果運行dlv時出現此提示:

"Developer tools access needs to take control of another process for debugging to continue. Type your password to allow this"

嘗試運行DevToolsSecurity -enable以消除提示。 有關更多信息,請參閱man DevToolsSecurity。

  • Linux
    請使用以下步驟在Linux上構建和安裝Delve
    在Linux上有兩種安裝方式。 首先是標準的go get方法:

    go get github.com/derekparker/delve/cmd/dlv

或者,您可以克隆repo并運行:

$ make install

注意:如果您使用Go 1.5必須先設置GO15VENDOREXPERIMENT = 1,然后才能繼續安裝。 GO15VENDOREXPERIMENT env var只是選擇進入Go 1.5 Vendor Experiment。

  • Windows
    請使用標準的go get命令在Windows上構建和安裝Delve

    go get github.com/derekparker/delve/cmd/dlv

注意:如果您使用Go 1.5必須先設置GO15VENDOREXPERIMENT = 1,然后才能繼續安裝。 GO15VENDOREXPERIMENT env var只是選擇進入Go 1.5 Vendor Experiment

用法

您可以多種方式調用Delve,具體取決于您的使用需求。 Delve使每個嘗試都是用戶友好的,確保用戶必須做最少的工作可能開始調試他們的程序。

請參閱主要使用文檔以進一步探索命令。

命令行界面

命令

命令 描述
args 打印函數參數
break 設置一個斷點
breakpoints 打印激活的斷點信息
clear 刪除斷點
clearall 刪除所有的斷點
condition 設置斷點條件
continue 運行到斷點或程序終止
disassemble 拆解器
exit 退出debugger
frame 在不同的框架上執行的命令
funcs 打印函數列表
goroutine 顯示或更改當前goroutine
goroutines 列出程序的全部goroutines
help 打印出幫助信息
list 顯示源代碼
locals 打印局部變量
next 跳到下一行
on 在遇到斷點時執行一個命令
print 評估表達式
regs 打印CPU寄存器的內容
restart 重啟進程
set 更改變量的值
source 執行包含delve命令列表的文件
sources 打印源文件列表
stack 打印堆棧跟蹤
step 單步執行程序
step-instruction 單步單個執行cpu指令
thread 切換到指定的線程
threads 打印每一個跟蹤線程的信息
trace 設置跟蹤點
types 打印類型列表
vars 打印某個包內的(全局)變量

API

API文檔

Delve公開了主要可以與Delve編程交互的IDEs和編輯器的一個API接口,以便這些程序使用。 API由終端使用,因此無論新功能如何,都將始終保持最新的鎖定狀態。

使用

為了在“API模式”中運行Delve,只需使用標準命令之一調用,提供--headless標志,如下所示:

$ dlv debug --headless --api-version=2 --log --listen=127.0.0.1:8181

這將以非交互模式啟動調試器,偵聽指定的地址,并啟用日志記錄。 當然最后兩個標志(log listen)是可選的。
或者如果您要將多個客戶端連接到API,也可以指定--accept-multi客戶端標志。
您可以使用connect子命令從Delve本身連接headless調試器:

$ dlv connect 127.0.0.1:8181

這對于遠程調試很有用。

API 接口

Delve已經可以允許多個客戶端/服務器這種方式的架構。因為所有的“業務邏輯”被抽象出實際的客戶端/服務器實現,所有允許容易實現新的API接口。

當前API接口

JSON-RPC

內部文件

TODO(derek parker)

將要做的

這個目錄將包含調試器內部和它如何工作的文檔。

編輯器集成

可以使用以下用于delve編輯器的插件:
1. Golang Plugin for IntelliJ IDEAhttps://github.com/go-lang-plugin-org/go-lang-idea-plugin)
2. Go for Visual Studio Code (https://github.com/Microsoft/vscode-go#go-for-visual-studio-code)
3. Emacs plugin https://github.com/benma/go-dlv.el/
4. LiteIDE https://github.com/visualfc/liteide
5. Go Debugger for Atom
go-debug
atom 使用delve 來調試代碼


demo.gif


安裝
可以使用apm install go-debug或在設置中搜索go-debug。
安裝delve
查閱https://github.com/derekparker/delve/tree/master/Documentation/installation
綁定的快捷鍵

f5 運行當前包 (dlv debug)
ctrl-f5 測試運行當前包(dlv test)
shift-f5 重新啟動當前的delve會話(r / restart)
f6 停止delve (exit / quit / q)
f8 繼續執行 (c / continue)
f9 切換斷點
f10 到下一個斷電源(n / next)
f11 進入函數 (s / step)
cmd-k cmd-g (mac) / ctrl-k ctrl-g (others) 切換主面板

鏈接
關于slack的golang社區:Gopher Slack| go-plus
問題?請直接在go-plus頻道給我發送消息

已知bugs

  • 當一個函數定義兩個(或多個)同名的變量時,delve無法區分它們:locals將打印這兩個變量,print將隨機選擇一個。 參見問題Issue#106。
  • Delve目前不支持32位系統。 這通常表現為proc / disasm.go中的編譯器錯誤。 參見問題Issue#20
  • 當Delve使用go之前的版本1.7.0編譯時,不能使用Receiver.Method Name語法在遠程包中的函數上設置斷點。 參見問題Issue#528。


作者:hehe_Android
鏈接:http://www.jianshu.com/p/cc4621d9c0aa
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。

posted on 2017-10-27 12:54 楊粼波 閱讀(1240) 評論(0)  編輯 收藏 引用

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美在线免费播放| 狠狠色2019综合网| 亚洲欧洲日本mm| 亚洲成人在线视频网站| 久久精品国产亚洲a| 国产精品麻豆va在线播放| 亚洲视频久久| 亚洲一区在线免费观看| 国产精品久久久久婷婷| 久久久噜噜噜久久狠狠50岁| 久久久国产成人精品| 1769国内精品视频在线播放| 亚洲国产精品一区制服丝袜| 欧美日韩成人在线视频| 一本色道综合亚洲| 亚洲欧美综合一区| 亚洲区第一页| 亚洲永久字幕| 亚洲黄色天堂| 亚洲——在线| 亚洲区一区二| 欧美一区二区在线视频| 亚洲激情国产| 亚洲欧美日韩在线观看a三区| 国产一区二区三区在线观看视频| 欧美va亚洲va日韩∨a综合色| 欧美乱妇高清无乱码| 欧美在线视频a| 欧美人交a欧美精品| 久久精品首页| 欧美三级日本三级少妇99| 久久综合一区二区| 国产精品久久久久久久久婷婷 | 亚洲欧洲免费视频| 亚洲一区二三| 99re6热只有精品免费观看| 欧美一区二区三区视频在线观看| 亚洲日本在线视频观看| 午夜日韩av| 亚洲一区二区三区午夜| 欧美 日韩 国产 一区| 久久久久国产一区二区| 欧美先锋影音| 亚洲精品乱码久久久久久按摩观| 黄色精品免费| 亚洲欧美综合精品久久成人 | 妖精视频成人观看www| 久久国产日本精品| 性亚洲最疯狂xxxx高清| 欧美日在线观看| 亚洲激情自拍| 亚洲国产成人一区| 久久国产欧美日韩精品| 欧美在线国产| 国产精品腿扒开做爽爽爽挤奶网站| 亚洲国产成人一区| 亚洲国产小视频| 久久久久久亚洲精品不卡4k岛国| 欧美一区二粉嫩精品国产一线天| 欧美日韩精品综合在线| 亚洲国产一区在线观看| 亚洲精品美女在线观看播放| 久久琪琪电影院| 久久综合久久综合九色| 好看不卡的中文字幕| 久久xxxx| 久久伊人亚洲| 18成人免费观看视频| 久久午夜视频| 亚洲成人在线视频播放| 国内揄拍国内精品少妇国语| 欧美亚洲综合另类| 免费成人毛片| 亚洲人成网站在线观看播放| 欧美成年视频| 亚洲精品欧美日韩专区| 亚洲小说区图片区| 国产精品永久免费观看| 欧美一区91| 欧美1级日本1级| 亚洲免费精品| 国产精品高潮呻吟| 性色av一区二区怡红| 免费精品视频| 在线亚洲一区二区| 国产精品夜夜夜一区二区三区尤| 欧美一区二区久久久| 欧美成人一区二区在线 | 国产日韩欧美不卡在线| 久久成人免费网| 亚洲第一中文字幕在线观看| 日韩一区二区福利| 国产精品一二三四| 久久伊人亚洲| 夜夜嗨网站十八久久 | 亚洲激情婷婷| 国产精品国产三级国产aⅴ9色| 亚洲综合日韩在线| 欧美国产精品v| 亚洲永久免费精品| 在线不卡欧美| 欧美日韩专区在线| 久久午夜精品| 亚洲在线免费观看| 亚洲国产视频a| 久久久国产视频91| 一本综合精品| 亚洲电影网站| 国产午夜亚洲精品理论片色戒| 欧美成人免费网站| 欧美一区二区三区免费观看| 亚洲精品乱码久久久久久蜜桃麻豆| 久久爱另类一区二区小说| 亚洲午夜羞羞片| 这里只有精品视频在线| 久久精品国产999大香线蕉| avtt综合网| 亚洲国产欧美日韩精品| 国产乱码精品1区2区3区| 欧美激情综合在线| 久久综合久久88| 欧美亚洲系列| 亚洲女人天堂成人av在线| 亚洲国产精品久久人人爱蜜臀| 亚洲自拍另类| 亚洲精品免费看| 国产日韩欧美不卡| 久久久久九九视频| 欧美一区二区三区的| 亚洲日本中文字幕区| 久久久国产精彩视频美女艺术照福利| 日韩视频在线一区二区三区| 亚洲国产婷婷| 国产一区二区三区免费不卡| 欧美日韩国产黄| 麻豆国产精品va在线观看不卡| 99国产精品久久久久久久成人热 | 欧美日韩国产成人| 欧美噜噜久久久xxx| 久久久精品性| 欧美自拍偷拍午夜视频| 亚洲一区二区三区免费在线观看| 亚洲第一精品久久忘忧草社区| 久久色在线观看| 久久精品一级爱片| 午夜欧美精品| 亚洲摸下面视频| 在线视频日本亚洲性| 亚洲欧洲日产国产网站| 日韩一级黄色av| 日韩视频三区| 亚洲乱码国产乱码精品精98午夜| 一区二区视频欧美| 亚洲三级色网| 亚洲免费观看视频| aa国产精品| 中文在线不卡视频| 欧美一区二区三区四区视频| 亚洲一区在线观看免费观看电影高清| 日韩一区二区精品| 宅男噜噜噜66国产日韩在线观看| 精品999在线观看| 亚洲第一在线视频| 91久久在线观看| 亚洲精品在线视频| 亚洲第一网站免费视频| 亚洲美女福利视频网站| 99国产精品久久久久久久久久| 夜色激情一区二区| 亚洲麻豆av| 欧美在线一二三四区| 久久人人九九| 欧美成人午夜77777| 久久久噜噜噜久久久| 亚洲精品久久7777| 亚洲午夜精品福利| 欧美专区福利在线| 亚洲欧美中日韩| 欧美激情精品久久久久久免费印度 | aaa亚洲精品一二三区| 亚洲香蕉成视频在线观看| 在线欧美一区| 午夜亚洲激情| 欧美成年人视频| 亚洲人在线视频| 99精品99| 久久婷婷国产综合精品青草 | 国产精品久久久久aaaa九色| 久久久精品国产99久久精品芒果| 亚洲久久在线| 91久久精品一区| 欧美激情视频一区二区三区不卡| 亚洲欧美精品在线观看| 亚洲每日更新| 在线亚洲欧美专区二区| 99re这里只有精品6| 亚洲精品影院在线观看| 在线日本高清免费不卡| 亚洲国产日韩欧美在线动漫 | 久久九九99|