【发布时间】:2019-02-11 22:23:41
【问题描述】:
我有 3 个 maven 项目,父项目、中间项目和子项目:
Parent-->Middle-->Child
然后我有 2 个注解处理器依赖项。
父项目将maven-compiler-plugin定义为托管插件,并在annotationProcessorPath上配置注解处理器1。中间项目也这样做,并在 annotationProcessorPath 上配置注释处理器 2。
Parent-->Middle-->Child
| |
AP1 AP2
然后子项目的编译失败,因为它缺少注释处理器1,因为它的配置来自中间项目。简单的答案是简单地将 processor1 添加到中间插件配置中。
然而,我真正想要的是让子级继承父级和中间级的托管配置并聚合它们。也许只是深夜,但我的直觉告诉我 maven 可以处理这个,但我想念它。
这是来自父 pom:
<groupId>myproject</groupId>
<artifactId>base</artifactId>
<version>1.2-SNAPSHOT</version>
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<annotationProcessorPaths>
<path>
<groupId>myproject</groupId>
<artifactId>annotation1</artifactId>
<version>1.0</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
</plugins>
</pluginManagement>
从中间起:
<parent>
<groupId>myproject</groupId>
<artifactId>base</artifactId>
<version>1.2-SNAPSHOT</version>
</parent>
<artifactId>middle</artifactId>
<version>1.1-SNAPSHOT</version>
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<annotationProcessorPaths>
<path>
<groupId>myproject</groupId>
<artifactId>annotation2</artifactId>
<version>1.0</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
</plugins>
</pluginManagement>
谁能告诉我不同层次结构级别(父级、中间级)的技术来向插件添加配置,以便子级具有来自两者的聚合配置
【问题讨论】:
标签: java maven maven-compiler-plugin