jboss啟動時窗口一閃而過怎么辦
情景:
出于某種原因,服務器重裝了系統,然后我又安裝了jdk并配置了JAVA_HOME和path這兩個系統參數。完了以后我開始啟動jboss服務,奇怪的一幕出現了,bat窗口一閃而過,沒留下任何可供參考的錯誤信息。
原因分析與解決措施:
jboss啟動的時候需要讀取JAVA_HOME這個系統參數,所以我首先檢查了JAVA_HOME的參數值是否正確,如下:
其中,第二項表示jdk的安裝目錄,乍看之下似乎沒什么問題,開始我也是這么堅定的認為的,之所以會這么肯定,那是因為我們在配置path這個系統變量時,通常會習慣于在每個參數值后面加上一個英文的分號,可是這個分號在配置JAVA_HOME這個系統變量時卻不能有,所以只要把最后的分號去掉,jboss就可以正常啟動了。
無論jboss5.0還是6.0,一啟動除開一閃而過,經多次反復:卸載;再安裝仍然"現象重現"就是不行。但是用eclipse或者myeclipse把jboss配進去,又可以了。
為什么單獨啟動不行呢?經過研究分析,有三個原因導致報錯現象:
經過檢查發現:
1,2是沒問題的。cmd進jboss的run.bat,報錯為:'findstr'
不是內部或外部命令,也不是可運行的程序或批處理文件。
看來是3.操作系統的問題,因為本人win
XP操作系統是[GHOST]克隆的,安裝的時候沒有把SystemRoot配到path中間[在環境變量配置中]!
1.在我的電腦環境變量里面新建個變量SystemRoot,如果系統為win2K,則SystemRoot的值為C:WINNT ,如果系統是win
xp到win7,則為C:windows。
2.path中追加:%SystemRoot%system32;%SystemRoot%。重啟運行poba軟件問題搞定。
這一行的全碼如下:
%JAVA_HOME%bin;%JAVA_HOME%bin;%JAVA_HOME%bin;%JAVA_HOME%bin;%SystemRoot%system32;%SystemRoot%;
錯誤一:ERROR
[AbstractKernelController
name=jboss.web.deployment:war=/invoker state=Create mode=Manual
requiredState=Installed:
Illegal character in path at index 16: file:/C:/Program
Files/jboss_6Final/server/default/deploy/http-invoker.sar/invoker.war/
ERROR [AbstractKernelController
Error installing to Start: name=jboss.web.deployment:war=/ROOT state=Create
mode=Manual
requiredState=Installed:
Illegal character in path at index 16: file:/C:/Program
Files/jboss_6Final/server/default/deploy/ROOT.war/
ERROR [AbstractKernelController
Error installing to Start: name=jboss.web.deployment:war=/javaEe_register_0100
state=Create mode=Manual
requiredState=Installed:
Illegal character in path at index 16: file:/C:/Program
Files/jboss_6Final/server/default/deploy/javaEe_register_0100.war/
這個錯誤是因為JBOSS_HOME的路徑中包含空格。解決:將jboss放到沒有空格的路徑下。
錯誤二:ERROR
[AbstractKernelController
name=XNIO:Binding:1200038492:RemotingTcpServer
state=Create:
Address already in use: bind
這個錯誤是因為jboss的某個應用端口與本地端口沖突造成的。解決辦法是:修改jboss的配置文件,文件路徑為:C:/jboss6/server/default/conf/bindingservice.beans/META-INF/bindings-jboss-beans.xml。需要注意的是:jboss提供web服務的端口8080這是默認端口,為了避免修改為8082.而錯誤二則是這個端口引起的5500,修改為5502就ok。
在windows的cmd控制臺輸入netstat –an查看本地tcp端口,如果跟這個文件配置端口一致就會出現這個錯誤。
錯誤三:ERROR
[ProfileServiceBootstrap] Failed to load
profile::
Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR
DETAILS)
這個錯誤出在最后,由前面的錯誤造成的。當前面的問題解決了,這個問題也不會再出了。
修改D:\jboss-6.1.0.Final\server\default\conf的jboss-service.xml文件
加上一行
address="${jboss.bind.address}"/>