用過Maven的人都知道,Maven項目的目錄結構跟傳統的DynamicWeb項目有些不同。當然我們按照Maven的規范建項目最好,但是當你恰好沒有按照Maven的規范來,又恰好需要使用Maven來打包,那該怎么辦呢?其實很簡單,這些都是可以通過配置pom文件進行更改的。
Maven標准目錄結構:
myproject/
|-- pom.xml
`-- src
|-- main
| |-- java
| | `-- com
| | `-- mycompany
| |-- resources
| `-- webapp
| |-- WEB-INF
| | `-- web.xml
| `-- index.jsp
`-- test
|-- java
| `-- com
| `-- mycompany
`-- resources
上面就是一個標准的Maven目錄結構,而常規Web項目的jsp、js、css等文件都是放到WebContent/WebRoot里的。而Maven中,這些文件是放到webapp下的。所以,如果你直接用Maven進行install也就是打包的時候,你的頁面相關的文件不會被打包進去,你會發現打好的war包里只有src下的.class文件和一些配置文件。那么如何將頁面等文件也包含進去呢?
很簡單,你只要告訴Maven你的jsp放在了什么位置,具體配置如下:
<build> <finalName>projectName</finalName> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.4</version> <configuration> <!--指定web.xml文件的位置--> <webXml>WebContent\WEB-INF\web.xml</webXml> <!--指定jsp等文件所在位置--> <warSourceDirectory>WebContent</warSourceDirectory> </configuration> </plugin> </plugins> </build>
OK加上以上配置,然后執行install命令,待打包完畢,你會發現WebContent里的文件也全部包含到了war包里。現在就可以將打好的war包復制到Tomcat下運行了。
可能你會覺得打完包還得手動復制到Tomcat,每次打包都要手動復制一次很麻煩,別急,下一篇會跟大家一起來學習如何用Maven打包並自動部署到Tomcat。一篇博客學習一點就好了,大家不要着急哦!