我新來Maven和我想創建的pom.xml以建立不同的使用環境配置文件如何創建Maven構建配置文件來有條件地複製文件?
戰爭文件,所以我創建的構建目標
<build>
<finalName>myacct_okc</finalName>
<resources>
<resource>
<directory>src/main/java</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>config/${environment}</directory>
</resource>
</resources>
</build>
然後創建的配置文件爲每個環境
<profiles>
<profile>
<id>local</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<environment>local</environment>
</properties>
</profile>
<profile>
<id>jboss</id>
<properties>
<environment>jboss</environment>
</properties>
</profile>
<profile>
<id>dev</id>
<properties>
<environment>dev</environment>
</properties>
</profile>
和我創建一個config文件夾中的每個ENV
project root
|-- src
| |-- main
| | |-- java
| | |-- resources
| | | |-- config.xml
| | | +-- config.properties
| | |-- webapp
| | | |-- META-INF
| | | | +--context.xml
| | |-- config
| | | |-- local
| | | | |--config.properties
| | | | +--config.xml
| | | |-- jboss
| | | | |--config.properties
| | | | +--config.xml
| | | +-- dev
| | | | |--config.properties
| | | | +--config.xml
+--pom.xml
現在,當我運行這個pom.xml中與例如任何個人資料jboss,config/jboss文件夾的文件不會被複制(或者我的意思是src/main/resources中的文件沒有被替換)。
當我啓用了調試上Maven構建我可以看到越來越執行復制。
[DEBUG] resource with targetPath null
directory C:\Projects\workspace\myaccount_build_4\myaccount\config\jboss
excludes []
includes []
[DEBUG] ignoreDelta true
[INFO] Copying 2 resources
[DEBUG] file config.xml has a filtered file extension
[DEBUG] copy C:\Projects\workspace\myaccount_build_4\myaccount\config\jboss\config.xml to C:\Projects\workspace\myaccount_build_4\myaccount\target\classes\config.xml
[DEBUG] file config.properties has a filtered file extension
[DEBUG] copy C:\Projects\workspace\myaccount_build_4\myaccount\config\jboss\META-INF\config.properties to C:\Projects\workspace\myaccount_build_4\myaccount\target\classes\META-INF\config.properties
但它並沒有替代文件。這些文件仍然來自src/main/resources。
Maven的版本是3.0.4
有人可以幫助我什麼,我做錯了什麼?
我已經看過這個question。這提供了一個解決方案,但我想重寫文件,而不是排除它們,然後複製。
後,這是從另一個Maven的基本的例子: http://maven.apache.org/guides/mini/guide-building-for-different- environments.html – Lunf 2014-09-24 08:29:16