Jboss7.1遇到的坑相關總結
阿新 • • 發佈:2018-12-09
- Jboss的包是jboss-as-7.1.1.Final.zip
- Jboss7.1與JDK1.8是不相容的,如果伺服器安裝的是JDK1.8,那麼你需要將JDK換成1.8以下的,可以是1.7的。
當然如果你不想將安裝好的JDK解除安裝掉,也可以使用記事本進入到Jboss的安裝目錄下,找到bin目錄下的檔案
standalone.bat或者standalone.sh(這個取決於你是linux還是windows),開啟檔案後找到java_home變數設定
它的值為你jdk1.7的安裝路徑,(前提是你的jboss環境變數配置正確,JBOSS_HOME你的jboss路徑path,加
%jboss_home%\bin)。 - 谷歌jar導致角標越界問題:
解決辦法:
將這個jar包的版本換掉:
- 如何修改Jboss服務的埠
- 如何使jboss7.1可以讓其他客戶機進行訪問(下面的兩個都可以):
- 在部署專案的時候可以使用資料夾的方式部署
a:例如我們的工程資料夾為app.war
b:在同級路徑下新建一個檔案app.war.dodeploy
c:修改配置檔案:standalone.xml:
更改standalone.xml檔案的deployment-scanner元素,增加auto-deploy-exploded="true",
改為 <deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000"
auto-deploy-exploded="true"/>
d:最後啟動專案即可,但是在專案中遇到過遇到過一個問題
當使用資料夾部署的時候,使用MQ傳送訊息或者接受訊息時整個專案會重新啟動,
這個是standalone.xml檔案中的配置導致的,需要將auto-deploy-exploded改為false.
e:所以還是建議直接使用war包的方式進行部署。 - Jboss在伺服器部署時沒有啟動成功:出現如下錯誤,在Jboss日誌中發現的錯誤:
JBAS015052: Did not receive a response to the deployment operation within the allowed timeout period [60 seconds]. Check the server configuration file and the server logs to find more about the status of the deployment
原因:大概看出是超時的問題,解決辦法,修改standalone.xml 的配置
- 啟動Jboss載入XML檔案時的錯誤
XML document structures must start and end within the same entity.
注意:這就是個大坑,我們在tomcat上啟動都是可以的,但是在Jboss上搞死啟動不了,一直出現這個問題,
我的是一個hbm.xml的一個hiberate配置檔案出現的問題。
出現這個錯誤,可能有三種情況:
a:xml檔案中的註釋格式有問題,把註釋刪了重新抒寫
b:xml的編碼跟工程不一樣,有亂碼,檢查一下eclipse中所有的編碼是否統一為utf-8
c:在xml中我們經常會使用註釋,<!-- -->註釋可能會報錯,還有一種說法是註釋橫槓間要留空格。
那麼請你最好將註釋刪除掉,還有就是最後不要存在空行,比如,xml裡面的內容寫了20行,
你最後一行是一個空行,什麼都沒有,也可能會導致出錯。 - 最後一個坑,就是我們在部署ssh專案的時候,可能會自定義struts.xml的路徑,但是在Jboss中卻一直啟動不了,
最後將struts.xml檔案放到src目錄下即可 - Jboss相關部署命令以及操作
⑴:停止服務
進入Jboss安裝目錄的bin目錄下: cd /home/jboss/jboss-as-7.1.1.Final/bin
執行命令:./jboss-cli.sh --connect --command=:shutdown
或者通過直接殺程序的方式進行:kill -9 PID
⑵釋出
a:如果是資料夾的方式
將app.tar 通過FTP方式放置在/home/jboss/jboss-as-7.1.1.Final/standalone/deployment/app.war 資料夾下,
執行命令:
進入部署資料夾下:cd /home/jboss/jboss-as-7.1.1.Final/standalone/deployment/app.war
解壓:tar -xvf app.tar
刪除tar包: rm -f app.tar 或者 右鍵delete
b:如果是war包的方式,就直接將war包放在/home/jboss/jboss-as-7.1.1.Final/standalone/deployment/目錄下即可。
⑶啟動服務的命令
a:進入Jboss的bin目錄下
cd /home/jboss/jboss-as-7.1.1.Final/bin
b:執行啟動服務的命令
指定nohup.out路徑方式:
nohup ./standalone.sh &> /home/ftm/jboss-as-7.1.1.Final/standalone/log/nohup.out 2>&1&
或者 nohup ./standalone.sh &(預設nohup.out日誌路徑在bin目錄下)
⑷檢視程序
ps -ax | grep jboss