pycharm remote debug

换工作了好久没写blog了,堕落了,哈哈,发现了好的东西分享一下,和以前使用的pycharm的远程debug相比,更为方便,原理同步本地和远程的代码,加载远程的环境运行,使用本地的代码+远程的环境,方便快捷,比http://blog.csdn.net/rogerjava/article/details/13095043要方便很多,哈哈,不用每次更新自己的Ip地址等等,不多说啦,又矫情了,看下面

转载:https://www.xncoding.com/2016/05/26/python/pycharm-remote.html

使用PyCharm进行远程开发和调试

你是否经常要在Windows 7或MAC OS X上面开发Python或Web应用程序,但是它们最后需要在linux上面来运行呢? 我们经常会碰到开发时没有问题但是到了正式的Linux环境下面却出现问题。那么怎样保证开发环境跟运行环境的一致呢?

通常有两种方法解决。一种是使用PyCharm内置支持的Vagrant,这个教程可以参考Vagrant开发环境配置。 不过很遗憾的是我自己在试验过程中启动VirtualBox虚拟机时候老是报错,暂时还没解决,读者可以自己试着测试看行不行。 第二种方式就是通过PyCharm的远程解释器加上文件同步功能,实现本地编辑代码->同步到服务器->通过远程debug来调试测试程序。目前我选择的是第二种,虽然比第一种更笨拙点。

远程调试的功能在Eclipse、IntelliJ IDEA等大型IDE中均有支持,实现原理都基本相同,这里采用PyCharm进行说明。

远程服务器的同步配置

远程服务器IP地址192.168.203.95,开启ssh服务,安装python版本2.7。我用一个在PyCharm里面的core-python项目来做演示。

首先我们需要配置PyCharm通服务器的代码同步,打开Tools | Deployment | Configuration

点击左边的“+”添加一个部署配置,输入名字,类型选SFTP

确定之后,再配置远程服务器的ip、端口、用户名和密码。root path是文件上传的根目录,注意这个目录必须用户名有权限创建文件。

然后配置映射,local path是你的工程目录,就是需要将本地这个目录同步到服务器上面,我填的是项目根目录。 Deploy path on server 这里填写相对于root path的目录,下面那个web path不用管先

如果你还有一些文件或文件夹不想同步,那么在配置对话框的第三个tab页“Excluded path”里面添加即可,可同时指定本地和远程。

还有一个设置,打开Tools | Deployment | Options,将”Create Empty directories”打上勾,要是指定的文件夹不存在,会自动创建。

上传和下载文件

有几种方法可以实现本地和远程文件的同步,手动和当文件保存后自动触发。这里我选择了手动,因为自动触发比如影响性能,PyCharm会卡,感觉不爽。

手动上传方式很简单,选择需要同步的文件或文件夹,然后选择 Tools | Deployment | Upload to sftp(这个是刚刚配置的部署名称)

下载文件也是一样,选择 Tools | Deployment | Download from sftp

比较远程和本地文件

有时候你并不确定远程和本地版本的完全一致,需要去比较看看。PyCharm提供了对比视图来为你解决这个问题。

选择Tools | Deployment | Browse Remote Host,打开远程文件视图,在右侧窗口就能看到远程主机中的文件

选择一个你想要对比的文件夹,点击右键->Sync with Local,打开同步对比窗口,使用左右箭头来同步内容。

上面是服务器与本地对比,那么本地文件通服务器对比,就先在PyCharm里面选择文件或文件夹,然后右键->Deployment->Sync with deployed to即可

PyCharm远程调试

在PyCharm中进行远程调试有两种选择:

  1. 使用远程的解释器
  2. 使用Python调试服务器

这里简单起见我只演示第一种,使用远程解释器,也就是使用服务器上面安装的python解释器。

配置远程Python解释器

选择File | Settings,选择Project | Project Interpreter,然后在右边,点击那个小齿轮设置,如下

然后点击”Add Remote”,填写主机的ssh配置

如果之前配置过SFTP的话就直接选“Deployment configuration”,然后选择刚刚的模板名称就可以了,由于我上面配置过就直接选模板, 这里请仔细看我的Python解释器是虚拟环境virtualenv,这个要在服务器上面先创建好虚拟环境。

开始调试

完成之后选择这个远程的解释器作为工程的解释器即可,然后配置一个运行实例,打断点调试。 这里我以另外一个django工程为例来说明,名字为zspace,因为用一个web工程来说明更具代表性。

选择“Run/Debug Configuration”,添加一个“Django server”,然后配置像下面这样写请注意图中标出的几个点,具体什么意思就不用多解释了吧,^_^

然后你就可以像本地调试一样打断点做调试了。这个步骤太简单就不截图了,记得修改源码后同步到服务器继续下一次的调试。

时间: 2024-10-14 03:48:06

pycharm remote debug的相关文章

Pycharm远程调试之ssh remote debug(二)

Pycharm远程调试之ssh remote debug (一) 上一篇我们讲了怎么去初步创建一个远程debug的工程,这篇我们来更深一下,讲一下当我们要修改Interperter时要怎么做. 1.创建一个工程,我们先将该工程使用local Interpreter,然后再把修改为remote Interpreter,看看我们需要怎么做(没那么简单的) 2.修改我们的Project Interpreter 为我们那好的remote Interpreter(在上一篇文章里) 3.添加Path map

iOS web remote debug 正确的姿势

在使用iOS Remote debug需要做以下准备 1. iOS devices 开启java script and web inspector 开启方式如下: 2. mac OS 自带的Safari开启develop 模式 开启方法如下: 如何使用iOS remote debug?

Tomcat Remote Debug操作和原理

操作篇 这部分主要讲,如何开启tomcat远程调试,并佐以实例.本文方式适用于windows和linux. 假设有两台机器,A是tomcat服务器所在机器,B是IDE安装机器.A和B可以是同一台机器,通常A是测试环境,B是开发环境. 简洁版本 在A机器的tomcat/bin/文件夹中,新建文件setenv.bat(或者startup.sh,根据你的操作系统),输入: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=500

Hbase 源码调试:Remote debug 模式

不愤不启,不悱不发:举一隅不以三隅反,则不复也. 解释:(教学生)不到他苦思冥想怎么也弄不明白的时候,不去开导他:不到他想说而又说不出来的时候,不去启发他.告诉他(四方形)的一个角,他不能由此推出另外三个角,就不再往下教他(新知识)了. 学习Hbase的开端,就是要了解它的架构,以及HMaster,HRegionServer 的一个启动流程,明白了Hbase内部的基本流程,才能从大局上把握住.明白了Hbase的组成部分,才能在集群出现问题的时候,快速定位到模块,再从模块定位到具体的错误. 下面记

Build gdb-7.7.1 for remote debug arm app

 GDB: The GNU Project Debugger http://www.gnu.org/software/gdb/ Download from: ftp://sourceware.org/pub/gdb/releases/ Build: PC side: cd /opt/crosstool/src/gdb-7.7.1/ ./configure --target=arm-linux --prefix=/opt/crosstool/arm-gdb make -j4 sudo make i

转:pycharm community debug django projects

原文:https://automationpanda.com/2017/09/14/django-projects-in-pycharm-community-edition/comment-page-1/ 注意"Creating Run Configurations"这一小节,这一节说明了如何利用pycharm community debug django项目 Django Projects in PyCharm Community Edition JetBrains PyCharm

Java Remote Debug(idea远程调试)

概述 对于分布式系统的调试不知道大家有什么好的方法.对于我来说,在知道远程调试这个方法之前就是在代码中打各种log,然后重新部署,上线,调试,这样比较费时.今天咱们来了解了解Java远程调试这个牛逼的功能,本文以Intellij IDEA为例讲解怎么使用远程调试.以Thrift入门教程这篇文章中使用的程序作为例子.这个程序由Thrift服务端和客户端组成.描述一下远程调试需要解决的问题: 服务端程序运行在一台远程服务器上,我们可以在本地服务端的代码(前提是本地的代码必须和远程服务器运行的代码一致

golang remote debug和docker debug

在编写 Go 代码的时候,因为很多时候都是需要调试服务器上的代码的,作为一个年长的工程师,肯定不能用 log.Printf 来调试问题,所以我选择了 delve 这个工具,通过 delve 我可以像本地调试代码一样在 Goland 中调试 Go 代码,很是惬意.如果要说缺点的话,那就是在服务端启动 delve 的 server 端之后,必须在一定时间内(不知道具体多久)连接上它,不然会关闭:同时,在我断开调试之后,server 会自动关闭,如果我要再次调试,那就必须再运行一次 server(当然

Pycharm远程调试之ssh remote debug -- Before Launch (三)

1. External Tools 外部工具,(autopep8等) Remote External Tools 远程的外部工具(shell脚本等) Before Launch: 程序Debug前执行"外部工具"或"远程外部工具" 简单来说,就是来帮我们在程序执行前执行的,帮我们干些累活的.比如我们程序启动前需要一个脚本帮我们做一些事情,就可以把这个脚本放到Before Launch中. 我用它做什么: 我写了个杀进程的脚本 ,因为我的程序在ReDebug时总是杀不