配置

若想调试远端web容器内部的应用,需要接入web容器的jvm,以Tomcat为例,需修改web容器的配置

// bin\startup.bat(.sh)文件,在里面添加

// windows
set CATALINA_OPTS="-agentlib:jdwp=transport=dt_socket,address=8888(自定义调试端口),server=y,suspend=n %CATALINA_OPTS%"

// linux
export CATALINA_OPTS="-agentlib:jdwp=transport=dt_socket,address= 8888(自定义调试端口),server=y,suspend=n $CATALINA_OPTS"

若是使用了spring boot并将工程打成了可执行JAR包

// 在使用java指令启动程序时需要附加额外的参数以开启外部调试,如下
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8888(自定义调试端口)

// 完整的启动指令是类似下面酱的
java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8888(自定义调试端口) -jar application.jar

IDEA连接远端调试



填写远端JMV所在服务器IP和调试端口号,保存即可:

连接远端JVM启动调试:

如若连接成功,调试控制台将输出以下内容,如果没成功,请自行检查服务器防火墙以及网络

 

接下来的操作就和在本地调试一样了,打断点,远端JVM会通过网络同步调试信息,和在本地没什么两样,要注意调试的时候和本地一样都是会暂停JVM继续往下执行的。

将新建项目上传至远端Git库

git init 
git add . 
git status 
git commit -m "first"
 git remote add origin http://192.168.*:3000/cjds-backend-develop/cjds-auth...

阅读全文

Maven上使用maven-source-plugin打包源码

项目比较复杂的时候一般分成多个项目多人进行开发,使用maven进行模块依赖管理。当你引用了别的开发人员的某个jar包,你会发现该jar包中的每个方法的注释都没...

阅读全文

Hibernate SQL查询转换Enum字段类型

在hibernate中有时候有些复杂查询需要使用原生SQL进行查询,并将查询结果转换放到 bean 中,而对于枚举字段类型的结果转换则需要做一些特殊处理。 枚举字段...

阅读全文

欢迎留言