IDEA远程调试

IDEA远程调试

Tomcat 开启JPDA调试模式

catalina.sh中对JPDA相关的配置变量描述如下:

#   JPDA_TRANSPORT  (Optional) JPDA transport used when the "jpda start"
#                   command is executed. The default is "dt_socket".
#
#   JPDA_ADDRESS    (Optional) Java runtime options used when the "jpda start"
#                   command is executed. The default is localhost:8000.
#
#   JPDA_SUSPEND    (Optional) Java runtime options used when the "jpda start"
#                   command is executed. Specifies whether JVM should suspend
#                   execution immediately after startup. Default is "n".
#
#   JPDA_OPTS       (Optional) Java runtime options used when the "jpda start"
#                   command is executed. If used, JPDA_TRANSPORT, JPDA_ADDRESS,
#                   and JPDA_SUSPEND are ignored. Thus, all required jpda
#                   options MUST be specified. The default is:
#
#                   -agentlib:jdwp=transport=$JPDA_TRANSPORT,
#                       address=$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND

当使用sh catalina.sh jpda start方式启动Tomcat的时候,将开启调试功能。默认配置为-agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n。根据Tomcat官方建议的修改方式,在$CATALINA_HOME/conf/下新增setenv.sh文件,并添加如下内容:

# 将监听端口修改为5005
export JPDA_TRANSPORT=5005 

IDEA配置远程Tomcat连接

Run > Edit Configuraions... > Add New Configuration
step-1.png

如上图所示,新增一个远程Tomcat运行时配置,并按照下图所示配置:
step-2.png

最主要的是在Startup/Connection中配置调试端口:
step-3.png

注意,此处的端口必须与setenv.sh中配置的$JPDA_TRANSPORT一致。

点击调试,可以在调试窗口中看到连接成功信息
step-4.png

自动部署项目至远程Tomcat

调试之前,我们希望能够自动将本地最新的版本部署到远程Tomcat服务,幸好IDEA为我们提供了这样的服务。接下来,我们将演示如何配置自动部署。

Tools > Deployment > Configurtions...
step-5.png

root path尽量指定为要登录用户的用户目录的绝对路径

之后进入Mappings选项卡
step-6.png

local path配置为要同步的文件夹

deployment path配置为远程主机存放web应用的目录,是上图root path的相对地址。

配置好远程主机后,需要修改同步选项:
Tools > Deployment > Options...
step-7.png

此后,每当local path中的文件有更改,就会被上传到远程主机的deployment path处。

在debug configuration中配置before-lanch动作为构建项目,每次调试时,就会重新生成项目,有改动的文件就会自动更新到远程服务器,达到自动更新项目的目的
step-8.png

你可能感兴趣的:(IDEA远程调试)