转载

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
IDEA远程调试

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

IDEA远程调试

最主要的是在 Startup/Connection 中配置调试端口:

IDEA远程调试

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

点击调试,可以在调试窗口中看到连接成功信息

IDEA远程调试

自动部署项目至远程Tomcat

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

Tools > Deployment > Configurtions...
IDEA远程调试

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

之后进入 Mappings 选项卡

IDEA远程调试

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

配置好远程主机后,需要修改同步选项:

Tools > Deployment > Options...

IDEA远程调试

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

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

IDEA远程调试

原文  https://segmentfault.com/a/1190000021414978
正文到此结束
Loading...