Lennart Jörelid commented on Improvement MJAXB-71

I still think you are oversimplifying the problem. I took the AspectJ example to highlight
generic cross-cutting behaviour which all projects in a multimodule build should use,
such as weaving custom-defined aspects into bytecode classes.

This implies that the AspectJ plugin must be defined within a parent and that it may or may
not be executed in any project in the reactor, depending on regexp matching for one of the
Pointcuts. Such matching can be nontrivial, so it could be difficult or highly impractical
for a developer to figure out if the aspectj plugin should be enabled for a particular leaf
project. Hence the practicality of actually inserting the plugin in the stereotype parent.

Also ... Given a fairly big reactor of some 400 maven projects, where some [around 60]
contain JAXB-annotated entities I certainly would not want to delegate the <plugin ...>
definition to all the leaf projects. What a nightmare to maintain, not to mention the added
and completely unnecessary complexity! In those cases, it seems much more efficient to
define the full build cycle (for a stereotype of project) in its parent pom, rather than
have 60 projects with extra plugin definitions in their poms. Reducing complexity and
not repeating yourself should constitute good maven configuration.

Having said that, I agree that I consider a plugin adding nonexistent sourceDirectories flawed or buggy.
I have placed an issue on the AspectJ maven plugin - but in the meantime I suggest that the JAXB2
plugin should check sanity.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators.
For more information on JIRA, see: http://www.atlassian.com/software/jira
--------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email

Reply via email to