I created a pull request for Maven core which fixes the issue that the new maven-compiler-plugin was facing (the confusion between "jar" and "test-jar"). With this fix, I'm starting to be able to compile the projects in my company with the new compiler.

   https://github.com/apache/maven/pull/1621

However, for future Maven developments, I have a wish. Pretty much every classes in the "org.apache.maven.internal.impl" package are public. Would it be possible to reduce visibility as much as possible? A drastic approach could be to make every classes package-private, then turn back to public only the classes that appear necessary for compilation or execution. The reason is because there is a lot of room for improvements in Maven, but with everything public, I do not really dare to propose too much refactoring. The pull request in this email contains an opportunistic refactoring for reducing code duplication. But I do not know if by doing so, I'm breaking code in other modules that may be using the implementation classes directly.

This with about reducing "org.apache.maven.internal.impl" visibility applies also to every implementation packages in Maven.

    Martin

Reply via email to