Java 什么是Maven';蚂蚁的对应物';s<;房地产>&引用;前缀";属性
我目前正在将Java Web项目构建过程从Ant迁移到Maven。当前进程使用多个特定于环境的属性文件,这些文件在WAR文件生成过程中根据提供给Ant的环境参数插入到主应用程序属性中 我无法在Maven中轻松复制的功能之一是属性文件前缀,即:Java 什么是Maven';蚂蚁的对应物';s<;房地产>&引用;前缀";属性,java,maven,web-applications,ant,Java,Maven,Web Applications,Ant,我目前正在将Java Web项目构建过程从Ant迁移到Maven。当前进程使用多个特定于环境的属性文件,这些文件在WAR文件生成过程中根据提供给Ant的环境参数插入到主应用程序属性中 我无法在Maven中轻松复制的功能之一是属性文件前缀,即: <property name="some.env.file" value="someEnv.properties"/> <property file="${some.env.file}" prefix="some.env"/> s
<property name="some.env.file" value="someEnv.properties"/>
<property file="${some.env.file}" prefix="some.env"/>
some.property=${some.env.propertyOne}
Maven提供了pom.xml过滤器和过滤元素,以允许属性替换,但我无法找到一种方法,将特定于环境的前缀设置为build parameter,从而强制我为Maven构建过程复制属性文件。有没有办法在Maven中复制此Ant的原始功能?我建议您使用Maven antrun插件加载属性文件,并使用前缀加载一个简单的Ant任务。并启用,以便ant定义的属性在maven中可用 在验证阶段(以及所有后续阶段),类似这样的操作将使ant定义的所有属性在maven构建中可用
maven antrun插件
1.7
验证
真的
跑
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<phase>validate</phase>
<configuration>
<exportAntProperties>true</exportAntProperties>
<target>
<property file="${some.env.file}" prefix="some.env"/>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>