small changes, long build time
david.holmes at oracle.com
Tue May 3 01:48:14 UTC 2016
On 3/05/2016 1:31 AM, Erik Joelsson wrote:
> On 2016-05-02 17:18, Pete Brunet wrote:
>> On 4/30/16 2:32 AM, David Holmes wrote:
>>> On 30/04/2016 4:18 PM, Alan Bateman wrote:
>>>> On 30/04/2016 00:46, Pete Brunet wrote:
>>>>> Even small edits to code in the jdk source tree result in very long
>>>>> build times now that jigsaw is merged in. Is anyone working on trying
>>>>> to improve that? Is there a workaround?
>>>> When you touch code in a module then you can use "make <module>" to
>>>> rebuild that module. If you use "make" then it will rebuild that module
>>>> and all other modules that directly or transitively depend on it. There
>>>> are some tricks with sjavac but that is essentially it.
>>>> So which module are you changing? Is this Windows? Are you re-building
>>>> images each time?
>> My changes are in java.desktop and jdk.accessibility, split between
>> Java, Win, and Mac code. I typically run "make images". If I do "make
>> java.desktop" will that recreate files in images/jdk(jre)/bin? At some
>> point soon I'll also be working in the JavaFX space but I think that's a
>> whole different story.
> "make java.desktop" will only update the files in <outputdir>/jdk/bin,
> the "exploded image". For some usecases that image works well enough and
> saves you some time.
> The complete images step is, as has been pointed out by others in this
> thread, quite slow these days. There are some improvements incoming but
> it will likely never be considered fast in comparison.
So what build target will ensure the exploded image is created and up to
>>>> If you are re-building images every time then you'll see it creates the
>>>> jmods (packaged modules too). It is a bit expensive at moment, partly
>>>> because each package module generates hashes of the module artifact of
>>>> each dependency. This has been changed in an upcoming refresh so that
>>>> the hashes are generated and recorded once, this in turn allows for
>>>> concurrency when generating the packaged modules. This may help you,
>>>> hard to say.
>>> Just to add my concerns here, I was changing the launcher and building
>>> images and that caused the jmods to be rebuilt as well. I would not
>>> expect that so do we have missing dependency information in the build?
More information about the build-dev