1. 程式人生 > >關於Linux虛擬機器下web專案部署到tomcat上後依然訪問不到的問題

關於Linux虛擬機器下web專案部署到tomcat上後依然訪問不到的問題

  在將eclipse匯出的WEB24.war部署到webapps下後,重啟tomcat發現自動解壓完成了。但在瀏覽器上仍訪問不到專案資料夾裡任何東西,會出現404報錯,但 虛擬機器IP地址:8080 是能夠正常訪問的。
  在overstackflow搜尋上給出的建議是去檢視日誌,即tomcat/logs裡的日誌檔案,去看了下發現在catalina.2018-06-08.log裡有這樣的報錯資訊
這裡寫圖片描述大大大撒
  發現WEB24啟動失敗,也就是說並沒被真正部署到tomcat上,當然也就訪問不到。往上發現是過濾器啟動造成的錯誤(Error filterStart),然後去localhost.2018-06-08.log裡看詳細報錯資訊
這裡寫圖片描述


  發現是AutoLoginFilter啟動報了嚴重異常,原因是UnsupportedClassVersionError:com/itheima/web/fileter/autoLoginFilter : Unsupported major.minor version 52.0 (unable to load class com.itheima.web.fileter.autoLoginFilter)
  再去搜下這個Unsupported major.minor version 52.0,發現是因為專案原本的jdk版本高於現在linux上的jdk版本,導致無法載入。最後我將web.xml裡的這塊
<filter>
<filter-name>AutoLoginFilter</filter-name>
<filter-class>com.xxx.web.fileter.autoLoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>AutoLoginFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

給註釋掉,也就是說載入專案的時候不用啟動AutoLoginFilter.class了,當然就能正常部署到tomcat上了,也能訪問到一些jsp和html檔案了,頁面能夠正常的顯示了,但一些功能還是涉及到jdk版本的點進去就會報錯(Unsupported major.minor version 52.0)。想要徹底解決只能統一jdk版本最好還有tomcat版本和mysql的版本都統一。