TravaOpenJDK new JVM option -XX:HotswapAgent, difference between fatjar and core modes?

1.4k Views Asked by At

TravaOpenJDK introduced a new JVM option -XX:HotswapAgent in version 11.0.9.

There are three modes to enable HotswapAgent, fatjar, core and external.

What is the difference between fatjar and core?

1

There are 1 best solutions below

1
On BEST ANSWER

Because this answer is hidden in a closed issue as @papaya said, i leave it here as reference

HotswapAgent core has no plugin except core JVM plugins. Then it is faster since less scanning tasks are necessary to be done, less class copying to target classloaders, there is no need to disable plugins. You choose only what you want.

Loaded plugins are visible in the log, "HOTSWAP AGENT: 15:43:42.059 INFO (org.hotswap.agent.config.PluginRegistry) - Discovered plugins:"

For core: Hotswapper, WatchResources, AnonymousClassPatch, ClassInitPlugin, JdkPlugin

For fatjar: dkPlugin, Hotswapper, WatchResources, ClassInitPlugin, AnonymousClassPatch, Hibernate, Hibernate3JPA, Hibernate3, Spring, Jersey1, Jersey2, Jetty, Tomcat, ZK, Logback, Log4j2, MyFaces, Mojarra, Omnifaces, ELResolver, WildFlyELResolver, OsgiEquinox, Owb, Proxy, WebObjects, Weld, JBossModules, ResteasyRegistry, Deltaspike, GlassFish, Vaadin, Wicket, CxfJAXRS, FreeMarker, Undertow, MyBatis