Hi Jon,
it is bothering me for a while that Maven is not yet capable to see that a fork
is not required (in most cases) when it is executed as part of a lifecycle.
Introducing x-no-fork goals is a fast workaround, but it is probably time to do
this properly.
Also plugins should be improved to see if they should do their action, e.g.:
Consider using the following flag in for the java compiler:
-Xpkginfo:{always,legacy,nonempty} Specify handling of package-info filesĀ
Maybe this will already improve your buildtime.
thanks,
Robert
On 2-2-2020 17:56:15, Jon Harper <[email protected]> wrote:
Hi list,
I would like to package a multimodule project (jar of each submodule)
and then create one aggregated javadoc jar attached to root pom.
The best solution I came up with is using the following command line
$ mvn package javadoc:aggregate-jar
It uses the fact that aggregate-jar is declared "@Mojo ( aggregator =
true )", so when the goal is explicitly called on the command line it
executes only once on the root pom. (if the goal is bound to a phase
of the lifecycle of the root pom, it will execute before the children
which I don't want)
One downside of this approach is that aggregate-jar forks the
lifecycle and so everything gets recompiled (which takes a long time
if you have many modules, or if you use features that prevent avoiding
recompiling, like having a package-info.java or using
maven-templating-plugin to insert build timestamps in your sources)
It seems like adding a javadoc:aggregate-jar-no-fork would solve the problem.
Is my understanding correct, and can we add the aggregate-jar-no-fork
goal ? Or what is everyone doing to generate aggregated javadocs
without recompiling everything
Thanks,
Jon
PS: another downside is that you must not forget to add the explicit
goal on the command line, but I can't see a solution for that, except
for the proposed lifecycle redesign with pre and post phases, which we
will get in the far future as far as I understand.
PS2: adding javadoc:aggregate-jar-no-fork would also be useful for
people who generate their aggregated javadoc on a "distribution"
submodule which has dependencies to everything instead of the root
pom. Currently they can make it work by using aggregate-no-fork and
then maven-jar-plugin but it's a bit complicated.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]