前面写过使用idea 调试java -jar xxx.jar方式启动,也可以直接调试远程tomcat项目,前提是你本地有远程项目的代码(不然上哪找代码调试),以下以linux环境为例(Windows类似)。
1、idea配置
新增远程调试入口
具体配置如下
传输方式,默认为Socket
-
Socket
:macOS 及 Linux 系统使用此种传输方式; -
Shared memory
: Windows 系统使用此种传输方式。
调试模式,默认为Attach
-
Attach
:此种模式下,调试服务端(被调试远程运行的机器)启动一个端口等待我们(调试客户端)去连接; -
Listen
: 此种模式下,是我们(调试客户端)去监听一个端口,当调试服务端准备好了,就会进行连接。
2、tomcat配置
找到tomcat的配置文件catalina.sh,路径为tomcat目录下的bin目录下
打开加上如下配置:
export JAVA_OPTS=‘-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005‘
其中-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005即为前面idea配置时选择的JDK对应的命令行参数值,直接复制出来使用,配置完后重启tomcat,使用如下命令查看配置是否生效:
netstat -nlp |grep 5005
之后就可以在本地idea运行启动进行调试,如以下表示连接成功,这样就可以开心的进行代码调试了