網(wǎng)站首頁 編程語言 正文
PyCharm利用pydevd-pycharm實(shí)現(xiàn)Python遠(yuǎn)程調(diào)試的詳細(xì)過程_python
作者:二的平方 ? 更新時(shí)間: 2022-11-03 編程語言一、介紹
Python遠(yuǎn)程調(diào)試,即在遠(yuǎn)程機(jī)器上運(yùn)行python代碼在本地進(jìn)行調(diào)試,之前文章里的方式方法已經(jīng)out,現(xiàn)在更新為當(dāng)前版本已經(jīng)成功實(shí)現(xiàn)遠(yuǎn)程調(diào)試的新內(nèi)容。
依賴環(huán)境:
- 本地Pycharm:PyCharm 2022.1.3(Professional Edition)
- IP:192.168.30.111
- 遠(yuǎn)程Ubuntu:VMware Ubuntu 20.04.03
- IP:192.168.30.132
二、安裝
遠(yuǎn)程主機(jī)安裝:pydevd-pycharm庫,且需要安裝指定版本:
pip3 install pydevd-pycharm~=221.5921.27 -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com
三、配置
3.1 PyCharm端配置
1.點(diǎn)擊PyCharm菜單欄:Edit Configurations
2.在Run/Debug Configurations
中點(diǎn)擊+
加號按鈕,在彈出列表中選擇Python Debug Server
3.需要配置字段如下:
- Name:ubuntu python
- IDE host name:192.168.30.111
- Port:2233
4.點(diǎn)擊OK
保存該配置
至此,本地端PyCharm配置完成,配置無誤可以在菜單欄看到ubuntu python這個(gè)配置,且圖標(biāo)無正常狀態(tài),如果上述配置項(xiàng)有誤,則會(huì)展示打紅叉標(biāo)記的圖標(biāo),比如配置錯(cuò)誤的端口號。
3.2 Ubuntu端配置
遠(yuǎn)程環(huán)境需要的配置主要是修改被調(diào)試的代碼文件,在代碼中增加相關(guān)配置:
- 被調(diào)試代碼文件:/home/test/super2.py
- 需要增加的配置:
import pydevd_pycharm pydevd_pycharm.settrace('192.168.30.111', port=2233, stdoutToServer=True, stderrToServer=True) class A: def __init__(self): self.n = 2 def add(self, m): print('self is {0} @A.add'.format(self)) self.n += m class B(A): def __init__(self): self.n = 3 def add(self, m): print('self is {0} @B.add'.format(self)) super().add(m) self.n += 3 b = B() b.add(2) print(b.n)
需要導(dǎo)入遠(yuǎn)程調(diào)試庫,配置信息需要和PyCharm端配置的內(nèi)容保持一致:
至此,遠(yuǎn)程被調(diào)試的代碼需要的配置完成。
四、實(shí)際調(diào)試
1.在本地PyCharm端,打開調(diào)試服務(wù),即點(diǎn)擊菜單欄中ubuntu python
后的Debug ubuntu python
按鈕:
2.啟動(dòng)成功,會(huì)出現(xiàn)等待連接的提示信息:
3.此時(shí),我們需要在Ubuntu端,啟動(dòng)被調(diào)試的代碼:python3 super2.py
,運(yùn)行成功后Ubuntu端不會(huì)里面執(zhí)行代碼,需要等待遠(yuǎn)程PyCharm端開始調(diào)試過程,才會(huì)執(zhí)行代碼并打印結(jié)果,而PyCharm端會(huì)在Console
下展示連接成功的提示:Connected to pydev debugger (build 221.5921.27)
4.此時(shí)我們會(huì)看到PyCharm彈出了一個(gè)提示,這個(gè)提示里的內(nèi)容就是我們調(diào)試的是遠(yuǎn)程文件,而本地沒有與之對應(yīng)的文件,可以通過提示給出的三個(gè)解決方案進(jìn)行解決,這里我選擇了:Download
選項(xiàng)
5.最后開始執(zhí)行具體的調(diào)試即可:
原文鏈接:https://blog.csdn.net/zhaoxz1985/article/details/126767888
相關(guān)推薦
- 2022-10-20 Kotlin作用域函數(shù)應(yīng)用詳細(xì)介紹_Android
- 2023-01-23 React新擴(kuò)展函數(shù)setState與lazyLoad及hook介紹_React
- 2022-06-10 C#關(guān)鍵字Check簡單介紹_C#教程
- 2021-12-01 騰訊云服務(wù)器搭建Jenkins詳細(xì)介紹_Linux
- 2022-06-25 在Nginx服務(wù)器上安裝SSL證書完成HTTPS請求的步驟詳解(springboot項(xiàng)目)_ngin
- 2022-07-21 Gitee:使用ssh提交代碼卻提示:DeployKey does not support push
- 2022-10-28 Go保證并發(fā)安全底層實(shí)現(xiàn)詳解_Golang
- 2022-05-11 continue,return,break的區(qū)別
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支