【问题标题】:How to deactivate maven profile in child module?如何在子模块中停用 Maven 配置文件?
【发布时间】:2011-08-16 07:09:34
【问题描述】:

我有一个在父 pom.xml 中定义并由属性激活的配置文件。在子模块中,我需要停用它。如何做到这一点(它是 Maven 3)?

ps。据我所知,这不能合法地完成(MNG-4565MNG-5083),但有什么可能的解决方法?

【问题讨论】:

    标签: java maven-2 maven


    【解决方案1】:

    这取决于。子 pom 不应该否认父 pom 的行为(就像LSP 用于构建过程)。在父 pom 中定义 profile 可能是个好主意,但仅在您真正需要的子 pom 中激活它。

    如果你不能这样做,你可以通过具有确切值的属性激活父 pom 中的配置文件:

    <profiles>
      <profile> 
        <activation>
          <property>
            <name>environment</name>
            <value>test</value>
          </property>
        </activation>
      </profile>
    </profiles>
    

    然后在子 pom 中重新定义属性值。

    【讨论】:

    • 在子 pom.xml 中重新定义属性不会有任何影响,因为 Maven 读取其属性之前构建了有效的 pom。
    猜你喜欢
    • 2016-05-21
    • 1970-01-01
    • 2016-03-02
    • 1970-01-01
    • 2012-01-02
    • 1970-01-01
    • 2013-04-26
    • 2019-04-18
    • 1970-01-01
    相关资源
    最近更新 更多