Linux部署Tomcat發(fā)布項目過程中各種問題及解決方法
部署項目到項目現(xiàn)場測試環(huán)境
JDK1.8
Tomcat8.5
Maven打包好的war
Linux-----Centos
不知道誰給現(xiàn)場的Tomcat,將其上傳到Linux平臺******目錄,并且進行解壓。直接啟動
圖1:
問題1
因為是第一次啟動Tocmat,沒有日志文件。所以直接啟動 ./startup.sh。后續(xù)可以使用以下命令動態(tài)的查看日志信息。執(zhí)行后提示沒有執(zhí)行權(quán)限
./startup.sh & tailf ../logs/catalina.out
問題分析: .sh可執(zhí)行文件 當前用戶都不具備權(quán)限
問題解決: 使用命令:chmod u+x *.sh。在tomcat/bin目錄下執(zhí)行
命令分析: 表示對當前目錄下的所有.sh文件的所有者增加可執(zhí)行權(quán)限。
- chmod是權(quán)限管理命令change the permissions mode of a file的縮寫
- u 代表所有者;
- x 代表執(zhí)行權(quán)限;
- “+” 表示增加權(quán)限。
- 也可以單獨指定一個文件 比如:chmod u+x abc.sh
- 然后用./startup.sh啟動。
圖2:
問題2
啟動之后報錯找不到 *****目錄下的文件。
問題分析: 此問題出現(xiàn)是因為在 tomcat 的server.xml文件中配置了多個 Context環(huán)境。但是在指定的目錄下并沒有項目部署。
問題解決: 刪除server.xml文件中所有的Context。刪除 tomcat 目錄webapps以及wtpwebapps 下所有部署過的項目。此時只是單獨啟動一個 ebank。啟動成功,訪問8080成功。
圖3:
問題3
在 tomcat 服務器 webapps上添加Maven打包好的war包。之后進行啟動。但是報錯端口被占用。
問題分析: 這個操作是在沒有暫停之前那一步操作進行的。所以導致端口被占用??墒侵苯訒和omcat之后還是報端口被占用
問題解決: 采用暴力一點的方式:
查詢ebank進程ID:ps aux|grep tomcat
直接殺掉進程:kill-9 PID 殺掉tomcat的進程,之后可以正常的啟動圖4:
問題4
此時雖然可以正常啟動,但是報錯:java.lang.OutOfMemoryError: PermGen space(提示內(nèi)存溢出,屬于永久區(qū)的內(nèi)存溢出)。
問題分析: Tomcat的內(nèi)存參數(shù)之前并沒有設置過,當前部署的項目占用內(nèi)存較大加載的class較多。導致永久區(qū)內(nèi)存不夠使用。
問題解決: 將tomcat 的bin 下 catalina.sh文件復制一份進行修改,將原先的進行備份。在catalina.sh文件中 找到cygwin=false位置的前面 添加參數(shù),注意引號要帶上
JAVA_OPTS="-Xms256m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=256m"
將修改后的文件替換到tomcat/bin下。
圖5:
圖6:
問題5
此時再次啟動,但是提示找不到catalina.sh文件?
問題分析: 因為在startup.sh執(zhí)行文件中會調(diào)用catalina.sh執(zhí)行文件。從而啟動Tomcat服務。后續(xù)使用命令 ll 查看bin目錄下。發(fā)現(xiàn)問題此時的catalina.sh 文件不在是一個可以執(zhí)行的文件了。(不是綠色的)問題解決: 再次使用chmod u+x catalina.sh 賦予可以執(zhí)行的權(quán)限。
圖7:
圖8:圖中以hello.sh 舉個栗子。(顯示為黑色,與catalina.sh 不同)
問題6
啟動成功,但是在瀏覽器確訪問不到項目,訪問8080成功。
問題分析: 在Tomcat的webapps目錄下發(fā)現(xiàn),經(jīng)過Tocmat的解壓縮將各個War包解壓后 都帶有版本號(war包是Maven打包生成的,帶有版本號)。瀏覽器訪問的正確地址是不帶版本號的問題解決: 刪除項目,重新命名War包。再次啟動。到此為止全部成功圖8:
額外使用的命令
清空日志:
echo -n "" > ../logs/catalina.out 固定語法:echo -n "" >
查看日志大?。?/strong>
du -h ../logs/catalina.out 固定語法:du -h >
到此這篇關(guān)于解決Linux部署Tomcat發(fā)布項目過程中各種問題的文章就介紹到這了,更多相關(guān)Linux部署Tomcat內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來源標注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學習參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。