在与Maven Ant任务运行时更改的pom.xml性能。可能吗?
-
27-09-2019 - |
题
我有以下用例: 我的应用程序在启动时Ant脚本的,它要求用户对项目配置的几个问题(数据库设置等)。这些设置存储在一个属性文件。
然后,我想从我的Maven通过Ant任务,这应该在我的pom.xml与属性文件的属性代替预先定义的属性Ant脚本内运行Maven。 我不想改变的pom.xml。
有没有办法做到这一点? 由于事先!
( BTW我已经尝试过类似的方法只用Maven的时候,这似乎此刻是不可能的)
解决方案
您可以使用-D
重新定义Maven的命令行上的属性,这些将在您的项目文件替换的属性。
例如,在pom.xml中
<properties>
<myProp>A</myProp>
</properties>
在您的蚂蚁的build.xml,可以然后调用如MVN命令行
mvn -DmyProp=B install
将在项目中设置myProp到B。使用宏的 MVN Ant任务页面讨论调用行家命令行。这可以容易地定制,以还通过附加属性。
要做到这一点,仅是Maven,使用 EXEC 插件推出Maven的时候,通过以相同的方式命令参数如使用的蚂蚁完成:java的任务
其他提示
你有没有尝试更换通过<copy>
Ant任务飞的属性?
假设你的性质在文件settings.properties
。定义属性在pom.xml
与周围@
更换,您可以复制的POM文件,并在同一时间代替部分属性。 E.g:
<copy file='pom.xml' toFile='real-pom.xml'>
<filterset filtersfile='settings.properties' />
</copy>
然后调用Maven的:
MVN -f真实的pom.xml
不隶属于 StackOverflow