[ https://issues.apache.org/jira/browse/MCOMPILER-203?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15090000#comment-15090000 ]
David M. Lloyd commented on MCOMPILER-203: ------------------------------------------ The idea is to not use javac anymore, or at most, do not support processor specification for javac, which I believe is consistent with the current design climate (in fact I'm not even sure that the latest version supports using javac anymore, does it?). Instead the javax.tools API should be used, as it is not only far more flexible but also solves a number of other unrelated bugs relating to output parsing, error reporting, etc. Using this API, it is trivial to specify isolated processors. > Allow compiler-plugin to specify annotation processor dependencies > ------------------------------------------------------------------ > > Key: MCOMPILER-203 > URL: https://issues.apache.org/jira/browse/MCOMPILER-203 > Project: Maven Compiler Plugin > Issue Type: New Feature > Affects Versions: 2.3.2, 3.1 > Environment: Java 6+ > Reporter: David M. Lloyd > Assignee: Andreas Gudian > Fix For: 3.5 > > > Right now the status quo for annotation processor artifacts requires one of > two actions: > # Use an external plugin for annotation processing > # Put the annotation processor in as a dependency with {{provided}} scope > The former is suboptimal because the external plugins are clunky and > ill-supported, and inflexible/hard to use. The latter is suboptimal because > it is often the case that you do not want to leak annotation processor > classes on to the application class path. > It should be possible to add annotation processor dependency artifacts to the > compiler plugin configuration such that they are recognized by the annotation > processing search algorithm of the compiler, but they do not actually appear > on the compilation class path. Ideally they would also be isolated from one > another (dependency graphs and all), but that's more of a "nice to have". -- This message was sent by Atlassian JIRA (v6.3.4#6332)