問題
前提介紹 :
環境版本 :
JDK -version : 1.8.0-251
Tomcat -version : 8.5.5
Maven -version : 3.6.3
項目情況描述
使用IDEA 創建 webapp, 使用的是Maven 作為項目管理工具, 選的Maven提供的項目模板 , web服務器使用的 Tomcat
問題描述
如下圖:

創建標准的Maven 項目文件夾,包含 java 和 resources 作為source目錄, webapp 目錄作為項目部署文件夾 . 並且都已經做過標記. 創建基本的 servlet 程序運行也沒有問題 . 但是使用Maven側邊欄工具里的clean 命令清除生成的項目文件目錄target后, 會出現找不到程序包的錯誤提示,在命令行輸入mvn idea:idea 即可解決 .
但是如果點擊運行按鈕 , 還會出現問題,就是部署項目后的target目錄只包含resources下的文件,java目錄下的源文件不會編譯 .這時如果運行項目web.xml中映射的java程序時就會報錯.
-
如果是調用
servlet程序會出現500錯誤 , 報錯為classNotFound的錯誤 ; -
如果在
web.xml中配置了Filter的話 , 就會Tomcat運行不起來 , 報錯一個或多個篩選器啟動失敗.
解決辦法
如下圖:

使用IDEA側邊欄的Maven工具的編譯命令compile , 編譯所需的 java 源文件 . 然后使用 war 命令打包項目 , 之后再啟動Tomcat服務器發布項目就可以了 .
