vs code修改、調(diào)試服務(wù)器代碼

1. 為什么這樣做?

??之前使用ssh連接服務(wù)器,然后借助jupyter notebook修改服務(wù)器代碼,然后使用pdbpdb.set_trace()在終端調(diào)試代碼。切換成vs code的原因如下:

  1. jupyter 中查看python方法時,各個類之間方法互相引用,跳轉(zhuǎn)不方便;
  2. 查看代碼的時候,遇見不了解的方法時,無法時時看到方法的解釋和參數(shù)說明;
  3. 調(diào)試代碼時,查看參數(shù)值時不是特別方便。

2. 設(shè)備及軟件描述:

  1. mac ,ubantu(16.04)
  2. visual studio code(1.29.1)

3.修改遠(yuǎn)程服務(wù)器代碼

??修改服務(wù)器代碼使用vscode的插件sftp,安裝完成后。配置過程如下:

  1. sftp.json文件。使用快捷鍵(mac) shift+cmd+p ,然后輸入SFTP:Config,打開sftp.json文件。當(dāng)然sftp.json中還可以配置屬性password,ignore.具體查看sftp的說明。
pic 1

2.同步本地代碼到本地。命令為:SFTP:sync Remote -> Local

pic 2
  1. 修改代碼,保存后,同步到服務(wù)器。命令為:SFTP:sync Local -> Remote
pic 3

4. 本地調(diào)試遠(yuǎn)程代碼(敲黑板,劃重點,不認(rèn)真看的考試不及格)

??這里必須得意下:我在引擎上搜索了很久,要么是pycharm的方法 要么是visual studio 版本不一樣,不能完全參考。(包括官網(wǎng))。當(dāng)然這里我還是主要參考官方文檔resolver101757github的提問。,像他們的成果表示深深的感謝。

  1. 設(shè)置launch.json。
pic 4
  1. 選擇python :attach.
pic 5
  1. 設(shè)置attach(敲黑板)。由于vscode 默認(rèn)沒有生成如下代碼,會導(dǎo)致可以服務(wù)器監(jiān)聽到,但是無法做到本地調(diào)試,而且當(dāng)添加斷電時,總是提示pydev debugger: warning: trying to add breakpoint to file that does not exist:。我就是在這里苦苦尋找了一天半才找到解決辦法。
pic 6
  1. 接下來已經(jīng)配置完成。需要做的就是講代碼從服務(wù)器同步到本地,在代碼開頭(import之前)添加如下代碼。然后在將代碼同步到服務(wù)器。
import ptvsd   # 使用pip 就可以安裝,網(wǎng)上有人說需要版本小于4.1.3,親測4.2.0沒問題。
import time
ptvsd.enable_attach(address=("10.0.3.0",5678))  # 這里的端口號大一些,大于1024,否則也會報錯。
ptvsd.wait_for_attach()
time.sleep(1)
  1. 在vscode終端使用ssh 連接上服務(wù)器,然后運行代碼,在vscode 中點擊調(diào)試按鈕(殺蟲劑圖標(biāo)),選擇上面設(shè)置的python:attach,點擊運行按鈕。如下圖:
pic 7
  1. 正確就可以成功啟動本地調(diào)試。

5. 可能的報錯

  1. python socket.error: [Errno 98] Address already in use [closed]
    ?? ptvsd.enable_attach(address=("10.0.3.0",5678)) ,端口號太小,之前我就取22,改成大一些就OK,5678是默認(rèn)的。
  2. pydev debugger: warning: trying to add breakpoint to file that does not exist
    ??返回去看專題4的問題3(設(shè)置attach(敲黑板))
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1、通過CocoaPods安裝項目名稱項目信息 AFNetworking網(wǎng)絡(luò)請求組件 FMDB本地數(shù)據(jù)庫組件 SD...
    陽明AI閱讀 16,201評論 3 119
  • 給我愛的回應(yīng)我就去赴佳期, 愿我們在林蔭道上十指相扣, 把梁祝的愛情故事輕唱, 永記著我們相識的時光。 若是你現(xiàn)在...
    依然yiran06閱讀 83評論 0 0
  • 一個抽象類、接口、多態(tài)的簡單實例。 News 和 UrlNews類 Displayable接口 News類 Url...
    迷路的丸子閱讀 1,123評論 0 0
  • .
    Jonsez閱讀 253評論 0 0
  • 親愛的又又,時光飛逝,用在你陪伴我的這一年,再恰當(dāng)不過,我經(jīng)?;貞浀綇尼t(yī)院抱你回來的那個早上,你小小的人,包在...
    又又de媽媽閱讀 257評論 0 1

友情鏈接更多精彩內(nèi)容