2010-04-29 17 views
5

我想知道是否可以在不重啓JBoss服務器的情況下部署java類文件。我正在使用jboss v4.2.2。部署java類文件時不重啓JBoss

此外,當我嘗試部署jsp文件時,它可以正常工作,並且服務器幾乎可以立即獲取更改。

感謝很多提前:)

回答

2

我在Tomcat JBoss的比我好,但它應該是可能的(如在Tomcat中)重新啓動應用程序而無需重新啓動應用服務器。如果服務器具有「開發模式」並且這是活動的,則應該可以簡單地通過 WEB-INF/web.xml觸發應用程序重新啓動,即更新其時間戳。這應該讓你以前替換的類文件加載。

+0

感謝線索!這實際上是訣竅。 以下是關於此的更多信息: http://community.jboss.org/wiki/RedeployAnApplicationWhenChangeAFileInAnExplodedDeploymentDirectory – user315603 2010-04-29 15:31:19

0

從理論上講,您不必重新啓動整個服務器,只需重新啓動特定的應用程序(ear-s)即可。如果JBoss(默認設置)注意到它的任何變化,它將自動重新部署你的耳朵。只需複製新版本即可。

如果你不使用它了,檢查了JBoss的工具Eclipse插件的,在開發過程中,以簡化展開時的全過程:http://www.jboss.org/tools

0

是的,有可能重新部署類文件不停止並每次啓動服務器。

你唯一需要做的就是創建一個交叉點或符號鏈接到應用程序目錄(在eclipse中通常是「WebContent」),並把你想要的名字放在Jboss中。

我已經做了一步一步的教程here

+0

這究竟意味着什麼? – Manticore 2016-07-25 09:02:37

+0

要在Windows中創建符號鏈接,命令如下所示:mklink/d名稱符號鏈接「名稱目錄」 – 2016-07-26 09:49:42

0

部署應用程序的爆炸(project.war文件夾),加上在你的web.xml:

<web-app> 
    <context-param> 
     <param-name>org.jboss.weld.development</param-name> 
     <param-value>true</param-value> 
    </context-param> 

覆蓋web.xml中的每次部署:

set PRJ_HOME=C:\Temp2\MyProject\src\main\webapp 
set PRJ_CLSS_HOME=%PRJ_HOME%\WEB-INF\classes\com\myProject 

set JBOSS_HOME= C:\Java\jboss-4.2.3.GA-jdk6\server\default\deploy\MyProject.war 
set JBOSS_CLSS_HOME= %JBOSS_HOME%\WEB-INF\classes\com\myProject 

copy %PRJ_CLSS_HOME%\frontend\actions\profile\ProfileAction.class %JBOSS_CLSS_HOME%\frontend\actions\profile\ProfileAction.class 
copy %PRJ_CLSS_HOME%\frontend\actions\profile\AjaxAction.class %JBOSS_CLSS_HOME%\frontend\actions\profile\AjaxAction.class 

ECHO.>>%JBOSS_HOME%\WEB-INF\web.xml