Jboss远程debug技术在网上有很多,主要是下面的做法:
JBoss服务器的启动方法:
假设JBoss的安装目录为$JBOSS_HOME,Windows以及Linux环境下的Debug模式的启动方法分别为:
Windows环境:
找到Windows下的JBoss的启动文件:run.bat,查找8787,可以找到如下一句:
rem set JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n %JAVA_OPTS%
将该注释去掉(即去掉rem),重新用run.bat启动JBoss即可。
注:这一步有个关键,就是很多人在run.bat里根本找不着上面那段话,网上的博客都是抄自一人,根本自身没有尝试(或者是以前的jboss版本就是那个样子),如果找不着这句话,就在run.bat同级目录里找run.conf这个文件,那句话就在这个里面,把这句话去掉注释放进run.bat就可以了,注意不要放在if条件里,可能会不执行。我是放在里:RESTART这句话后面,已经亲自试过,可以启动成功。
Linux环境:
找到Linux环境下的JBoss启动文件:run.sh
为了保留以前的启动配置,我们作以下操作:
# cp run.sh run-debug.sh
# cp run.conf run-debug.conf
# vi run-debug.sh
查找run.conf,改为run-debug.conf,然后保存run-debug.sh文件
# vi run-debug.conf
查找8787,可以找到:
#JAVA_OPTS="$JAVA_OPTS -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"
把注释去掉
重新启动JBoss即可
#./run-debug.sh
启动之后,JBoss服务器会在8787端口进行侦听。
Eclipse的设置
如果使用Eclipse作为IDE开发环境,可以这样设置:
按照画面所示设置好跟JBoss服务器的连接之后,便可在程序中设置断点,执行画面处理,便会在断点出停住调试了。