一般來說在JavaEE應用程序的開發過程中,大家都習慣使用 Tomcat作為調試服務器,相應的在 Eclipse IDE中調試Tomcat也很簡單,可以下載tomcateclipse插件即可輕松方便的在IDE中調試應用(參 見 com.sysdeo.eclipse.tomcat)。
但是,如果應用是企業級的,即需要EJB容器部署,Tomcat就無能為力了,這時候,我們可以選擇 JBoss AS作為調試服務器。
如何將應用自動構建並部署到JBoss的deploy目錄中,在這裡並不是討論的重點,JBoss Seam-gen生成 的工程帶有在Eclipse中自動構建部署的Ant腳本,想了解可以參考之。
如果要在IDE中調試JBoss,我們需要先看看JBoss是如何啟動的:以JBoss 4.2.X為例,在 JBoss_Home/bin目錄中的run.bat最後有如下兩句,其實就是JBoss啟動的關鍵所在:
"%JAVA%" %JAVA_OPTS% ^
-Djava.endorsed.dirs = "%JBOSS_ENDORSED_DIRS%" ^
-classpath "%JBOSS_CLASSPATH%" ^
org.jboss.Main %*
順籐摸瓜,找出變量 %JBOSS_ENDORSED_DIRS% = JBoss_Home\lib\endorsed , %JBOSS_CLASSPATH% 就更好理解了,其實就是 JBoss_Home\lib 加上應用程序所需的classpath。
既然明白了原理,在Eclipse中設置一個launch吧,通過“Open Run Dialog ...”打開launch定義窗 口,新建之。
在“Main class”中填寫 org.jboss.Main ,當然,你需要將jboss-system.jar加入工程的classpath 。然後在Arguments->VM arguments 中填寫 -Djava.endorsed.dirs=D:\jboss- 4.2.3.GA\lib\endorsed ,這樣,就可以通過運行這個launch在IDE中啟動JBoss應用服務器了。
最後,別忘了在SourceCode中設定源代碼目錄,方便的Debug。