我正在设置一个使用Maven过滤的项目来填充空白"在一些配置文件中。但是,我不想在pom.xml中将它们设置为属性,而是将它们设置为System属性,以便我可以像这样创建项目:
mvn install -Duser=xxxx -Dpassword=xxxx
在要修改的文件中,我尝试使用${user}
和${password}
作为占位符,没有运气。我想做什么甚至可能?
(注意:我是专门在maven-war-plugin的<webresources>
部分设置过滤来修改/ src / main / webapp / WEB-INF中的配置文件。
更新
以下是插件的<configuration>
部分:
<configuration>
<webResources>
<resource>
<!-- this is relative to the pom.xml directory -->
<filtering>true</filtering>
<directory>src/main/webapp/WEB-INF</directory>
<includes>
<include>**/applicationContext.xml</include>
</includes>
</resource>
</webResources>
</configuration>
以下是我要在目标文件中修改的内容:
<property name="user" value="${user}" />
我还尝试使用${system.user}
作为占位符而没有运气。
解决方案
使用$ {user}和$ {password}工作。我的问题出在<directory>
的<{1}}部分:
为:
<resource>
好:
<directory>src/main/webapp/WEB-INF</directory>