当前位置: 首页 > 面试题库 >

禁用在父POM中定义的Maven插件

邹锦
2023-03-14
问题内容

我使用的父POM定义了我不想在子POM中运行的插件。如何完全禁用子pom中的插件?

约束:我不能更改父POM本身。


问题答案:

在禁用子POM中的Findbugs时,以下对我有用:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>findbugs-maven-plugin</artifactId>
    <executions>
        <execution>
            <id>ID_AS_IN_PARENT</id> <!-- id is necessary sometimes -->
            <phase>none</phase>
        </execution>
    </executions>
</plugin>

注意:Findbugs插件的完整定义在我们的父/超级POM中,因此它将继承该版本等。

在Maven 3中,您需要使用:

 <configuration>
      <skip>true</skip>
 </configuration>

用于插件。



 类似资料:
  • 我有一组项目,它们都需要在构建期间运行相同系列的Maven插件执行。我想避免在每个项目中重新声明所有这些配置,所以我让它们都从一个只包含那些插件执行(8个不同的mojo)的父pom“模板”项目继承。但我希望在Maven构建期间,这些插件执行只在子项目上运行,而不在父项目上运行。 > 在父POM的元素中声明插件执行,并使用properties-maven-plugin打开父项目中其他插件的属性。这没

  • 我正试着做一个包含所有项目的胖uber罐子。如果我做了“MVN包”,我得到一个uber jar下的“blah”项目标签文件夹。(blah项目有主类。)uber jar包含所有项目(作为文件夹而不是jar),但当我运行它时,它似乎无法识别feature1和feature2项目。 我在上面添加了feature1和feature2的依赖项,以便它们在uber jar文件中。这错了吗?附注。blahmes

  • 我在为父-子pom文件设置java编译器版本时遇到了问题。我在版本1.7的子pom中添加了maven-compiler-plugin,并注意到java版本的子模块从默认的1.5变成了1.7,而父项目仍然是1.5。然后,我将编译器插件从子pom移到父pom。预计对于父maven模块和子maven模块,编译器版本将更改为1.7。但奇怪的是,没有观察到任何变化,子模块仍然是1.7,父项目是1.5。我从e

  • 我有许多子POM(50个项目),要求我更新每个版本上的所有POM,例如,当从移动到时。 如何在一个地方定义版本,并在所有POM中重用它? 编辑-关于请求的一些动机:我希望在切换版本时尽可能少的占用。作为要更改的小文件。因为几乎没有人promise推动。等。 编辑-在加载父属性之前不能使用父属性。

  • 我们有一个公司范围的Super Pom,用于定义我们使用的许多默认值。例如,Super Pom定义要使用的JDK版本以及其他参数。这由我们的项目继承为父pom。 我们的大多数项目都使用JDK1.7,但有一组项目仍在JDK1.6版本上。我在我的父母pom中添加了以下配置文件定义: 现在,我有一个名为的配置文件,我想在项目的pom中指定它应该默认使用这个。我该怎么做? 我尝试在项目的pom中添加: 但

  • Maven插件及其在父pom中定义的依赖项,我不希望我的子pom包含该插件依赖项。 例如,如果有1个父级和100个子级,99个使用该插件并希望在一个子级中排除该插件。 我们如何才能实现这一目标?