small changes, long build time
Alan.Bateman at oracle.com
Sun May 1 06:22:40 UTC 2016
On 01/05/2016 05:21, David Holmes wrote:
> The native code - java.c. Can't see any reason for jmods to be
> recreated every time I recompile that!
The packaged modules contain the tools/launcher for that module. So if
you touch java.c then the launchers for every tool are re-generated and
thus the packaged modules needs to be re-generated too.
In jdk9/dev then anything that transitively depends on any of these
modules needs its packaged module re-created too because the packaged
module has hashes of its dependences to avoid linking modules from
different JDK builds. It's slightly different in the refresh that will
be in jdk9/dev in a few days. In the refresh then the hashes are stored
in java.base and so the only additional packaged module that needs to be
re-created is java.base.jmod.
> Sure. But they shouldn't need to be recreated unless something
> relating to their content has changed.
jlink isn't incremental so if you are using an "images" build then the
runtime images will be re-created whenever anything has changed.
More information about the build-dev