Using CDS and AOT with the Eclipse IDE

Calvin Cheung calvin.cheung at oracle.com
Sat Jul 19 01:38:29 UTC 2025


Hi Daniel,

Thanks for your experiments with CDS and AOT.

 From your AOT_logs_26ea.txt:

> WARNING: Using incubator modules: jdk.incubator.vector
> [0.055s][info][aot] Not starting management agent during creation of 
> AOT cache.
> Reading AOTConfiguration app.aotconf and writing AOTCache app.aot
> [0.057s][error][aot] An error has occurred while processing the AOT 
> configuration file. Run with -Xlog:aot for details.
> [0.057s][error][aot] archivedBootLayer not available, disabling full 
> module graph

The jdk.incubator.vector incubator module is included. We currently 
don't archive the boot layer if an incubator module is included in the 
module configuration. The incubator is added because the eclipse.ini 
file contains:

--add-modules=ALL-SYSTEM

I tried removing the above line from eclipse.ini and I don't see the 
above error anymore.

Can you give it a try?

I also tried your method of measuring the eclipse startup time by 
checking the line starting with "Application started in:" at the 
terminal. I noticed the line won't show up until I click on the "Launch" 
button on the eclipse window. Are you able to start eclipse without any 
splash screen and GUI?

Thanks!
Calvin


On 7/18/25 5:47 AM, Daniel Schmid wrote:
>
> Hi there,
>
> I made a few experiments with CDS and AOT archives on the Eclipse IDE 
> and wanted to share my results here.
> I ran 4 Eclipse installations (my personal main Eclipse installation 
> is in a comment further down) with AppCDS and -XX:AOTCache and I have 
> written down my results here: 
> https://github.com/eclipse-platform/eclipse.platform/discussions/2060
>
> I think the Eclipse IDE is an interesting application to test as it is 
> a fairly big codebase with many classes loaded at runtime (so it 
> doesn't make it easy for Leyden's improvements) via OSGi.
>
> I have used the latest EA build of JDK 26 (26-ea+6-582). Should I use 
> a different JDK build to test it?
>
> Essentially my findings (which are relevant to this mailing list) are 
> the following:
> - There has been an error when creating the AOT archive but it was 
> still created and it was usable. I want to make sure that the people 
> here are aware of that error. To be honest, I did not 
> expect -XX:AOTCache to work that well with Eclipse.
> - While CDS seems to come with a noticeable improvement for Eclipse 
> startup time, -XX:AOTCache seems to have similar startup times as CDS 
> (not faster). This might be because of Eclipse's class loading 
> shenanigans.
> - It worked with an agent attached (The Lombok tooling for Eclipse 
> attaches an agent into the IDE, I think that's necessary to inject 
> itself into the Eclipse Java Compiler).
>
>
> The error I got:
>
> |[0.074s][error][aot] An error has occurred while processing the AOT 
> configuration file. Run with -Xlog:aot for details. 
> [0.074s][error][aot] archivedBootLayer not available, disabling full 
> module graph AOTCache creation is complete: app.aot 106397696 bytes |
>
> I provided the logs here: 
> https://github.com/user-attachments/files/21313886/AOT_logs_26ea.txt 
> (technically not the same run but it also has that error).
>
>
> Yours,
> Daniel Schmid
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/leyden-dev/attachments/20250718/49d4c647/attachment.htm>


More information about the leyden-dev mailing list