apache / apache/maven-compiler-plugin

[MCOMPILER-543] Allow to exclude particular dependency from annotation processor classpath

Open
#746 0 comments 0 reactions 0 assignees View on GitHub
enhancement priority:minor
Dominant language
Java
Stars
261
Forks
191
Avg merge
1d 5h
Merged PRs (30d)
8

Description

**[Alexey Markevich](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=amarkevich)** opened **[MCOMPILER-543](https://issues.apache.org/jira/browse/MCOMPILER-543?redirect=false)** and commented

like [Surefire](https://maven.apache.org/surefire/maven-surefire-plugin/examples/configuring-classpath.html#removing-dependency-classpath-elements) but for annotationProcessorPaths element. Case is:

- parent module:

```




org.apache.maven.plugins
maven-compiler-plugin



grpoup1
artifact1
version1




...





org.apache.maven.plugins
maven-compiler-plugin



group2
artifact2
version2



```

 - child module:

```



org.apache.maven.plugins
maven-compiler-plugin


default-compile
compile

compile




```

disable all processors. Goal is exclude only base one to have something like

```



org.apache.maven.plugins
maven-compiler-plugin


default-compile
compile

compile



group1:artifact1:version1
```

---
No further details from [MCOMPILER-543](https://issues.apache.org/jira/browse/MCOMPILER-543?redirect=false)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the compiler plugin's annotationProcessorPaths configuration and compare the requested exclusion behavior with Surefire's documented classpath-removal example. Define how an annotationProcessorPaths exclusion is configured and matched against the listed groupId, artifactId, and version; done means the base processor can be excluded while other configured processors remain available.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.