java專案部署異常解析及處理方案

狂奔的CD發表於2018-01-04
這段時間狀態有點離線,基礎的東西都忘光光了,今天部署一個專案,部署時沒有報任何異常,但是專案死活跑不起來,在此歸納一下,處理專案部署問題的解決思路:

1)專案部署之後是跑在server上的,其實第一步你得去server上看看裝配上的專案有沒有異常。eclipse部署在tomcat上的專案路徑最後一般是在專案工作空間下的:
專案空間/.metadata/.plugins/org.eclipse.wst.server.core/tmpxxx/wtpwebapps。
如果你曾經修改過,就找到你修改過的路徑。
2)正常javaweb專案的目錄結構如下:
這裡寫圖片描述
可以看到有META-INF,WEB-INF,以及其他web的資原始檔,這些資原始檔就是webroot下的檔案結構,一毛一樣
這裡寫圖片描述
再看WEB-INF裡面,多了classes和lib,這列的classes檔案是src/main/java中的java檔案編譯而成的.class檔案,lib中則是專案所有依賴的jar包,包括了maven依賴,專案依賴,jar包直接依賴。當然了,lib的位置有時候不在WEB-INF下。
總之,你要找到對應這幾個部分是否齊全class檔案,依賴的jar包,和web部分的檔案,少了就肯定報錯了。
3)發現少了,如何處理呢?右鍵專案->屬性,找到Deployment Assembly部署和裝配
這裡寫圖片描述
這裡配置了部署的時候裝配的所有模組:
src/main/java是java檔案存放位置,少了就無法編譯需要的class檔案。src/main/resources不會陌生,我們很多配置檔案,比如spring,資料庫,屬性檔案等存放在這也不能少。
src/test/java測試模組可有可無
/WebContent就是web部分的資源
Maven包含了所有maven依賴專案
另外,有時候可能有專案依賴,這裡需要裝配到該專案
至於單獨的jar包依賴,一般我們存放在/WebContent/WEB-INF/lib下了,所以有了/WebContent即可。

至此,關於這部分我就解釋完了

4)我的問題還是要說一下的好奇葩,看起來五臟俱全
這裡寫圖片描述
然而我在部署的專案上發現少了web部分,其實是src/main/webapp這個路徑不對,要加上我本地正確的路徑
這裡寫圖片描述
所以第4點要強調的東東大家明白了吧,source那裡指的是路徑,要與本地一致

相關文章