我使用〜/ .m2/settings.xml来存储我项目中pom.xml文件中使用的许多属性名称.如果我使XML无效(通过添加另一个<例如),maven会立即生成错误,说它无法解析该文件.如果我保持XML有效,我的appBeans.xml文件中的设置不会选择对settings.xml中定义的属性的引用.
有没有人遇到过这个问题?我有点像我的智慧.
从Maven配置反射属性的工作原理是资源过滤.
确保您的settings.xml
项目pom和目标xml文件包含正确的配置并驻留在正确的位置.
如果我理解正确,您希望在settings.xml中存储属性名称和值,以便可以在项目文件中使用props.我将提供一个工作示例:
定义的默认配置文件和属性settings.xml
:
<profiles>
<profile>
<id>default</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<someProp>Value</someProp>
</properties>
</profile>
</profiles>
Run Code Online (Sandbox Code Playgroud)
在以下位置定义资源文件夹的filtering = true pom.xml
:
<build>
<resources>
<resource>
<directory>${basedir}/src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
Run Code Online (Sandbox Code Playgroud)
在xml文件中定义属性(位于src/main/resources folder
):
...
<element>${someProp}</element>
...
Run Code Online (Sandbox Code Playgroud)
在此之后,您应该在target/classes/appBeans.xml中看到过滤结果.
请记住,如果您正在使用Eclipse和m2eclipse或类似的插件,它可能无法在settings.xml
不重新启动Eclipse的情况下开始使用更新,并且它的自动构建有时会覆盖目标文件夹中的文件.我正在谈论经验:)
归档时间: |
|
查看次数: |
4796 次 |
最近记录: |