問題
在學習SpringMVC的時候,我用eclipse建立了動态Web項目,用maven打包成war直接在tomcat運作成功。這個項目就是我在springmvc學習筆記之項目建構錯誤中建構的項目,當時我用IDEA中的Maven建構了項目,發現打開網頁時顯示404錯誤。而我用eclipse重新建構項目後就能正常通路頁面了。
然而當我用IDEA自帶的tomcat配件啟動tomcat時,卻發現出現404錯誤。
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2cs0TPR1keJRVZvZkMMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLzATO4UTNyAjM2AjMxAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
尋找解決方案
一開始我以為是我的配置檔案或者類寫錯了,于是跟着教程查了好久的BUG。╮(╯▽╰)╭
後來我漸漸感覺,應該是IDE從IDEA學生版換成IDEA完整版時出現了問題。
我原來使用的時smart tomcat插件,建構過程比較簡單,類似于直接打包項目為WAR後部署在tomcat上運作。
而IDEA完整版中使用的tomcat配件的配置就複雜得多。先是要配置module(建構springmvc項目的時候會自動建構),然後要配置artifact,接着才是配置tomcat的一些參數。
因為我對IDEA完整版不熟,是以我以為是tomcat配置的過程中出現了錯誤。
直到我看到了網友善意的提醒:━━∑( ̄□ ̄*|||━━
這個問題産生的原因是IDEA中SpringMVC項目的建構方式略有不同,隻需要修改以下内容就能解決問題。
- 将lib複制到WEB-INF目錄下,否則項目打包時不會包括這些庫。
- 在web.xml裡,将
修改為<url-pattern>/</url-pattern>
<url-pattern>/index</url-pattern>
- 在通路網頁時,末尾加上
/index
修改完後,突然如釋重負。(* ̄;( ̄ *)
反思
- 在遇到問題時,要多看别人的部落格或者壇論,從别人的經驗中找到解決方案。
- 如果教程下方有關于問題的讨論,就不用另外尋找答案。要多關注教程下方的讨論内容。