IDEA 远程调试 Remote JVM Debug

一,Linux(Centos7) 基本环境环境搭建

1,JDK安装

2,打开5005端口(默认端口)

查看已经开放的端口:

 firewall-cmd --list-ports

开放端口:

  firewall-cmd --zone=public --add-port=5005/tcp --permanent

重启防火墙:

systemctl reload firewalld

注意:阿里云服务器还需要在官网配置安全组

二,IDEA配置

1,项目配置

<build>
	<plugins>
		<plugin>
			<groupId>org.springframework.bootgroupId>
			<artifactId>spring-boot-maven-pluginartifactId>
			<configuration>
				<jvmArguments>-Xdebug -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=njvmArguments>
			configuration>
		plugin>
	plugins>
build>

参数解释:
-Xdebug :通知JVM工作在DEBUG模式下;
-Xrunjdwp :通知JVM使用(Java debug wire protocol)运行调试环境。该参数同时包含了一系列的调试选项;
transport :指定了调试数据的传送方式,dt_socket是指用SOCKET模式,另有dt_shmem指用共享内存方式,其中,dt_shmem只适用于Windows平台;
address :调试服务器的端口号,客户端用来连接服务器的端口号;
server=y/n: VM 是否需要作为调试服务器执行;
suspend=y/n: 是否在调试客户端建立连接之后启动 VM;

打包成功后 上传到服务器。

2,IDEA Debug 设置

(1)添加Remote JVM Debug
IDEA 远程调试 Remote JVM Debug_第1张图片
(2)编辑Remote JVM Debug
IDEA 远程调试 Remote JVM Debug_第2张图片
参数:

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005

保存好后就可以到服务器启动jar包了

三,服务启动

nohup java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar /home/ftp/new-project/test.jar 

IDEA 远程调试 Remote JVM Debug_第3张图片
启动成功,并监听了5005端口

四, IDEA使用Debug

选择我们开始编辑好的Remote JVM Debug ,点击Debug启动IDEA 远程调试 Remote JVM Debug_第4张图片
出现 Connected to the target VM, address: ‘xxx.xxx.xxx.xxx:5005’, transport: ‘socket’ 表示连接成功。
就可以在IDEA 打上断点,监测服务器中运行程序的相关参数了。

你可能感兴趣的:(java,intellij-idea)