生活随笔
收集整理的這篇文章主要介紹了
利用MAVEN打包时,如何包含更多的资源文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
首先,來看下MAVENx項目標準的目錄結構:
?
一般情況下,我們用到的資源文件(各種xml,properites,xsd文件等)都放在src/main/resources下面,利用maven打包時,maven能把這些資源文件打包到相應的jar或者war里。
?
有時候,比如mybatis的mapper.xml文件,我們習慣把它和Mapper.java放一起,都在src/main/java下面,這樣利用maven打包時,就需要修改pom.xml文件,來把mapper.xml文件一起打包進jar或者war里了,否則,這些文件不會被打包的。(maven認為src/main/java只是java的源代碼路徑)。網絡上有很多方法,我大概試了下,幾種方法都可以,可以任選一種即可。
?
方法1,其中**/*這樣的寫法,是為了保證各級子目錄下的資源文件被打包。
Xml代碼??
<build>??????<finalName>test</finalName>??????<!--??????這樣也可以把所有的xml文件,打包到相應位置。??????<resources>??????????<resource>??????????????<directory>src/main/resources</directory>??????????????<includes>??????????????????<include>**/*.properties</include>??????????????????<include>**/*.xml</include>??????????????????<include>**/*.tld</include>??????????????</includes>??????????????<filtering>false</filtering>??????????</resource>??????????<resource>??????????????<directory>src/main/java</directory>??????????????<includes>??????????????????<include>**/*.properties</include>??????????????????<include>**/*.xml</include>??????????????????<include>**/*.tld</include>??????????????</includes>??????????????<filtering>false</filtering>??????????</resource>??????</resources>??</build>??
?
方法2,利用build-helper-maven-plugin插件
Xml代碼??
<build>??????...??????</plugins>??????????...??????????<!--??????????此plugin可以用??????????利用此plugin,把源代碼中的xml文件,??????????打包到相應位置,這里主要是為了打包Mybatis的mapper.xml文件???????????-->??????????<plugin>??????????????<groupId>org.codehaus.mojo</groupId>??????????????<artifactId>build-helper-maven-plugin</artifactId>??????????????<version>1.8</version>??????????????<executions>??????????????????<execution>??????????????????????<id>add-resource</id>??????????????????????<phase>generate-resources</phase>??????????????????????<goals>??????????????????????????<goal>add-resource</goal>??????????????????????</goals>??????????????????????<configuration>??????????????????????????<resources>??????????????????????????????<resource>??????????????????????????????????<directory>src/main/java</directory>??????????????????????????????????<includes>??????????????????????????????????????<include>**/*.xml</include>??????????????????????????????????</includes>??????????????????????????????</resource>??????????????????????????</resources>??????????????????????</configuration>??????????????????</execution>??????????????</executions>??????????</plugin>?????????????...??????</plugins>???????????...??</build>??
?
方法3,利用maven-resources-plugin插件
Xml代碼??
<build>??????...??????</plugins>??????????...??????????<!--??????????此plugin可以用??????????利用此plugin,把源代碼中的xml文件,打包到相應位置,??????????這里主要是為了打包Mybatis的mapper.xml文件???????????-->??????????<plugin>??????????????<artifactId>maven-resources-plugin</artifactId>??????????????<version>2.5</version>??????????????<executions>??????????????????<execution>??????????????????????<id>copy-xmls</id>??????????????????????<phase>process-sources</phase>??????????????????????<goals>??????????????????????????<goal>copy-resources</goal>??????????????????????</goals>??????????????????????<configuration>??????????????????????????<outputDirectory>${basedir}/target/classes</outputDirectory>??????????????????????????<resources>??????????????????????????????<resource>??????????????????????????????????<directory>${basedir}/src/main/java</directory>??????????????????????????????????<includes>??????????????????????????????????????<include>**/*.xml</include>??????????????????????????????????</includes>??????????????????????????????</resource>??????????????????????????</resources>??????????????????????</configuration>??????????????????</execution>??????????????</executions>??????????</plugin>?????????????...??????</plugins>???????????...??</build>??
與50位技術專家面對面20年技術見證,附贈技術全景圖
總結
以上是生活随笔為你收集整理的利用MAVEN打包时,如何包含更多的资源文件的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。