It is probably relatively trivial to add a configure option to select just the 
"JRE modules" when building, rather than all modules. If we add such an option, 
it would still be possible to build a traditional JRE, not just at the same 
time as building the full JDK. Doing Erik's change as suggested here, combined 
with such additional functionality would allow us to remove a lot of old cruft 
from the build system, while still allowing distributors to build a JRE. I'd 
recommend doing something like this, rather than to delay this patch to 
post-JDK11. 

/Magnus

> 2 juni 2018 kl. 10:20 skrev Alan Bateman <alan.bate...@oracle.com>:
> 
>> On 02/06/2018 08:05, Aleksey Shipilev wrote:
>> :
>> Unfortunately, in the age of containers, distribution size matters. It makes 
>> the whole sense to ship
>> JRE in Docker containers to provide the execution environment for the upper 
>> layers. Remember, hardly
>> any application is fully modularized and/or uses jlink/jimage way of 
>> distribution.
>> 
>> Also, products that ship with their own OpenJDK distribution (e.g. JetBrains 
>> IDEs) do ship with
>> jres, which cuts down their distribution sizes.
>> 
>> Cost savings for having JRE only are significant, as can be observed with 
>> current bundles:
>> 
>>  178M Jun  2 08:53 jdk-11-internal+0_linux-x64_bin.tar.gz
>>   38M Jun  2 08:53 jre-11-internal+0_linux-x64_bin.tar.gz
>> 
>> Therefore, I believe removing jre is too disruptive, at least for 11, at 
>> least until we see that the
>> whole jlink/jimage thing really works out in the wider Java ecosystem and 
>> JREs are really abandoned.
> I don't disagree with the significance of what has been proposed here. 
> However, just to point out that creating what used to know as the JRE is one 
> `jlink` command. There is no requirement for the application or libraries 
> using that run-time be developed as modules. Also incorporate generating of 
> JDK run-time images into the build when working with containers is very 
> useful as you get fine control on which modules to include.
> 
> -Alan
> 

Reply via email to