java - 如果激活多个配置文件,如何解决冲突的属性

标签 java maven build

Maven profiles documentation没有提到这一点,这可能是构建流程设计不佳的标志,但是如果多个配置文件处于 Activity 状态并且它们都定义了相同的属性,是否有解决冲突属性的规则?

我很确定本地声明(在 pom.xml 中)会覆盖 settings.xml 中的声明,对于 colocal 配置文件不太确定

  • 文件内的声明顺序重要吗?
  • 是否有明确的激活顺序可能很重要?
  • 如果通过 CLI (-Pprofile1,profile2) 手动激活,顺序是否重要?

谢谢

最佳答案

没有解决冲突发生 - 只是覆盖。 Afaik 的顺序是设置,pom,然后是命令行。对于 pom 和设置文件中的多个配置文件,文件中的顺序也很重要,除此之外,事情因 Maven 版本而异。

我强烈建议您减少对配置文件的使用,这样您就不必担心这些复杂性,并且一定要安装帮助插件。

您还可以在 POM 编辑器的 M2Eclipse 插件中看到 Eclipse 中有效的 pom。同时,这应该对您有所帮助。

并回答您的问题:

是的

是的

是的

所有订单都很重要并且可能导致结果,有时我们只是说“令人惊讶”的结果。

关于java - 如果激活多个配置文件,如何解决冲突的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12477562/

相关文章:

java - maven中的npm install相当于什么

java - Spring 批处理 : How can I specify a class of a step in XML configuration?

java - Maven和POI如何更好地理解Java中的Excel文件

maven - Soap spring boot wsdl 生成的应用程序失败,显示 404 无可用消息

Android 检测构建失败

java - 在 Java 中折叠顺序流

eclipse - 安装 m2e-egit 后发现 Eclipse IDE (Mars) 中缺少 Maven

maven-2 - 在 Maven 中,我可以在当前项目上方指定相对路径吗?

visual-studio-2010 - 无法使用 devenv 编译 vdproj - 'targeting ' x6 4' is not compatible with the project' s 目标平台 'x86' '

java - 覆盖 Thread.sleep()