2009-02-05 111 views

回答

97

您的意思是來自Eclipse的remote debug JBoss

Configuring Eclipse for Remote Debugging來自:

設置JAVA_OPTS變量如下:

set JAVA_OPTS= -Xdebug -Xnoagent 
    -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n %JAVA_OPTS% 

或:

JAVA_OPTS="-Xdebug -Xnoagent 
    -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n $JAVA_OPTS" 

在調試˚F rame,選擇遠程Java應用程序節點。

在連接屬性中,指定localhost作爲主機,並將端口指定爲在JBoss服務器的運行批處理腳本8787中指定的端口。

JBoss Debug

+1

不知道添加註釋來回答這個老會得到讀取,但在這裏不用反正!我已經使用這個設置來通過Eclipse調試我的JBOSS服務器上的應用程序,並且它工作正常 - 我可以在Eclipse中設置斷點並攔截服務器上的請求。但是,當我重新構建應用程序並將其熱部署到JBOSS上時,新版本的應用程序運行成功,但我無法再通過Eclipse截獲處理。斷點被忽略。這是預期的行爲?每次我想要調試重新部署的應用程序時,是否必須重新啓動JBOSS? – CodeClimber 2010-10-27 16:11:57

+1

@dairemac:它至少會被我讀取;)謝謝你的反饋。我無法直接重現此特定設置,但我懷疑監控應用程序的進程在熱部署期間會終止,這意味着重新啓動JBossDebug會話。 – VonC 2010-10-27 16:42:26

+0

@VonC:我已經對run.bat文件進行了更改,並且正在嘗試重新啓動jboss服務器,但與正常模式相比,它花費了很多時間,對於可能會改善啓動時間的任何建議? – Rachel 2011-10-28 21:17:58

12

如果設置了使用Eclipse Web工具一個JBoss服務器,你可以簡單地啓動調試模式下的服務器(服務器調試按鈕來查看)。這將允許你在JBoss內運​​行的應用程序中設置斷點。

12

VonC在他的回答中提到如何從Eclipse進行遠程調試。

我想補充一點,JAVA_OPTS設置已經在run.conf.bat。你只需要取消其註釋:

JBOSS_HOME\bin\run.conf.bat在Windows上:

rem # Sample JPDA settings for remote socket debugging 
set "JAVA_OPTS=%JAVA_OPTS% -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n" 

Linux版本是相似的,位於JBOSS_HOME/bin/run.conf

0

在這裏,如果你想直接調試服務器,那麼你可以用途:

1)的Windows - >

2)顯示視圖 - >服務器:右鍵單擊服務器,然後在調試模式下運行。

0

您需要在Eclipse調試配置來定義一個遠程Java應用程序:

打開調試配置(選擇項目,然後從菜單運行/調試配置開放) 在左邊的樹,然後按選擇遠程Java應用程序「新建」按鈕 在右側面板上選擇您的Web應用程序項目並在端口字段中輸入8787。 這裏是一個鏈接到這個過程的詳細描述。

當您啓動遠程調試配置時,Eclipse將連接到JBoss進程。如果成功,調試視圖將顯示JBoss線程。工具欄/菜單中還有一個斷開連接圖標,用於停止遠程調試。

0

@VonC說的是正確的,但你可以把命令直接設置爲​​參數jBoss啓動。

要做到這一點,開放jBoss服務器內部Eclipse,去打開啓動配置,並把這個​​參數textboxvm args