您的位置:首页 > 编程语言 > Java开发

如何远程debug部署到widefly/JBoss服务器上的J2EE程序

2016-05-25 16:30 381 查看
一般来说,当我们的J2EE软件最终部署到服务器之后,就会和我们的本地开发环境有很大的不同:

服务器上的widefly或Jboss一般都是运行在JRE上,而不是本地开发环境的JDK
服务器上的widefly或Jboss都是运行的domain mode而不是本地开发环境的standalone mode

因此,当你的J2EE程序在服务器上出现很难在本地复现的问题时,我们是很需要在一个远程调试的方法。下面的一个可行的方法:

Prepare JDK

 


Sent to Lab

 



 
Install it

 
rpm -ivh jdk-7u80-linux-x64.rpm
 
Start up server with debug mode

Update host.xml

 vim /jboss-eap/domain/configuration/host.xml, add option "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8787"

注意,这一步很关键,因为当Widefly或Jboss在domain mode启动的时候,我们要debug是app本身(运行在host上),而不是host controller

 



 

Update domain.sh

vim /jboss-eap/bin/domain.sh (JAVA="/usr/java/jdk1.7.0_80/bin/java"), 让Jboss在JDK上启动

 



 

 

 

23/05/2016 13:54 - Screen Clipping

 

 

Restart jboss

 
Configure Idea remote debug

 



 
 
这时,你就应该能连上JBOSS并远程Debug了 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  调试 服务器 jboss jdk j2ee