在maven中爲實現熱部署設置,部署至webapp,即webroot
設置classes輸出目的地,修改maven默認編譯位置 (使用該方法在maven打包的時候須要將classes輸出目的地修改至WEB-INF/classes目錄外,不然會報錯xxxxx not found 目前已獲得解決)
首先 設置maven 打包的輸出目錄, 這樣能夠自動copy jar 至web根目錄下lib下面
<!-- 更改maven默認的打包目錄 --> <plugin> <artifactId>maven-war-plugin</artifactId> <configuration> <webappDirectory>${basedir}/src/main/webapp</webappDirectory> <warSourceDirectory>${basedir}/src/main/webapp</warSourceDirectory> </configuration> </plugin>
設置
default out folder classes
的輸出目的地 實現修改後自動編譯即發佈
這樣設置後 在打包的時候概率會出現 class 編譯出錯 xxxxx not found的狀況,因爲是maven 編譯class和須要打包webapp下全部的文件時發現classes目錄下已經存在文件了衝突了 解決方法:修改maven默認編譯classes的目錄與default out folder classes輸出目的地一致 解決衝突
<build> <outputDirectory>${basedir}/src/main/webapp/WEB-INF/classes</outputDirectory> </build>
問題獲得解決 , 設置
default out folder classes
以後最好clean 整個項目整理下目錄結構 ,在設置上面屬性以後,maven編譯class文件出現編譯不完整的情況,手動clean代替其建立目錄結構
OK 至此
自動編譯已經設置好了
webapp目錄格式已經能夠直接部署至web容器上了