Skip to content

Instantly share code, notes, and snippets.

@rbaul
Created November 17, 2021 07:04
Show Gist options
  • Save rbaul/8d34ee64afdc0ad1c6b195a1e37cc229 to your computer and use it in GitHub Desktop.
Save rbaul/8d34ee64afdc0ad1c6b195a1e37cc229 to your computer and use it in GitHub Desktop.
jlink usage
C:\"Program Files"\AdoptOpenJDK\jdk-15.0.2.7-openj9\bin\jlink --module-path C:\"Program Files"\AdoptOpenJDK\jdk-15.0.2.7-openj9\jmods --verbose --add-modules java.base,java.logging,java.compiler,java.
scripting,java.xml,jdk.net,jdk.jdwp.agent,java.sql,jdk.unsupported,java.naming,java.desktop,java.management,java.security.jgss,java.instrument,jdk.management.agent,jdk.localedata,openj9.sharedclasses,jdk.naming.dns,jdk.jcmd,java.sql
.rowset,jdk.crypto.cryptoki,jdk.crypto.ec --output jdk-minimal
// Install
https://adoptopenjdk.net/releases.html?variant=openjdk15&jvmVariant=openj9
// Create new JDK
C:\"Program Files"\AdoptOpenJDK\jdk-15.0.2.7-openj9\bin\jlink --module-path C:\"Program Files"\AdoptOpenJDK\jdk-15.0.2.7-openj9\jmods --verbose --add-modules java.base,java.compiler,java.datatransfer,java.desktop,java.instrument,java.logging,java.management,java.management.rmi,java.naming,java.net.http,java.prefs,java.rmi,java.scripting,java.se,java.security.jgss,java.security.sasl,java.smartcardio,java.sql,java.sql.rowset,java.transaction.xa,java.xml.crypto,java.xml,jdk.accessibility,jdk.attach,jdk.charsets,jdk.compiler,jdk.crypto.cryptoki,jdk.crypto.ec,jdk.crypto.mscapi,jdk.dynalink,jdk.editpad,jdk.httpserver,jdk.incubator.foreign,jdk.incubator.jpackage,jdk.internal.ed,jdk.internal.jvmstat,jdk.internal.le,jdk.internal.opt,jdk.jartool,jdk.javadoc,jdk.jcmd,jdk.jconsole,jdk.jdeps,jdk.jdi,jdk.jdwp.agent,jdk.jlink,jdk.jshell,jdk.jsobject,jdk.localedata,jdk.management.agent,jdk.management,jdk.naming.dns,jdk.naming.rmi,jdk.net,jdk.nio.mapmode,jdk.sctp,jdk.security.auth,jdk.security.jgss,jdk.unsupported.desktop,jdk.unsupported,jdk.xml.dom,jdk.zipfs,openj9.cuda,openj9.dataaccess,openj9.dtfj,openj9.dtfjview,openj9.gpu,openj9.jvm,openj9.sharedclasses,openj9.traceformat,openj9.zosconditionhandling --output jdk-minimal
Output:
java.base file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.base.jmod
java.compiler file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.compiler.jmod
java.datatransfer file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.datatransfer.jmod
java.desktop file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.desktop.jmod
java.instrument file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.instrument.jmod
java.logging file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.logging.jmod
java.management file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.management.jmod
java.management.rmi file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.management.rmi.jmod
java.naming file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.naming.jmod
java.prefs file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.prefs.jmod
java.rmi file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.rmi.jmod
java.scripting file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.scripting.jmod
java.security.jgss file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.security.jgss.jmod
java.security.sasl file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.security.sasl.jmod
java.sql file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.sql.jmod
java.sql.rowset file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.sql.rowset.jmod
java.transaction.xa file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.transaction.xa.jmod
java.xml file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/java.xml.jmod
jdk.attach file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/jdk.attach.jmod
jdk.crypto.cryptoki file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/jdk.crypto.cryptoki.jmod
jdk.crypto.ec file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/jdk.crypto.ec.jmod
jdk.internal.jvmstat file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/jdk.internal.jvmstat.jmod
jdk.jcmd file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/jdk.jcmd.jmod
jdk.jdwp.agent file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/jdk.jdwp.agent.jmod
jdk.localedata file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/jdk.localedata.jmod
jdk.management.agent file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/jdk.management.agent.jmod
jdk.naming.dns file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/jdk.naming.dns.jmod
jdk.net file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/jdk.net.jmod
jdk.unsupported file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/jdk.unsupported.jmod
openj9.sharedclasses file:///C:/Program%20Files/AdoptOpenJDK/jdk-15.0.2.7-openj9/jmods/openj9.sharedclasses.jmod
Providers:
openj9.sharedclasses provides com.ibm.sharedclasses.spi.SharedClassProvider used by java.base,java.management,java.rmi
jdk.attach provides com.sun.tools.attach.spi.AttachProvider used by jdk.attach
java.desktop provides java.net.ContentHandlerFactory used by java.base
java.base provides java.nio.file.spi.FileSystemProvider used by java.base
java.naming provides java.security.Provider used by java.base
java.security.jgss provides java.security.Provider used by java.base
java.security.sasl provides java.security.Provider used by java.base
jdk.crypto.cryptoki provides java.security.Provider used by java.base
jdk.crypto.ec provides java.security.Provider used by java.base
java.management.rmi provides javax.management.remote.JMXConnectorProvider used by java.management
java.management.rmi provides javax.management.remote.JMXConnectorServerProvider used by java.management
jdk.naming.dns provides javax.naming.spi.InitialContextFactory used by java.naming
java.desktop provides javax.print.PrintServiceLookup used by java.desktop
java.desktop provides javax.print.StreamPrintServiceFactory used by java.desktop
java.management provides javax.security.auth.spi.LoginModule used by java.base
java.desktop provides javax.sound.midi.spi.MidiDeviceProvider used by java.desktop
java.desktop provides javax.sound.midi.spi.MidiFileReader used by java.desktop
java.desktop provides javax.sound.midi.spi.MidiFileWriter used by java.desktop
java.desktop provides javax.sound.midi.spi.SoundbankReader used by java.desktop
java.desktop provides javax.sound.sampled.spi.AudioFileReader used by java.desktop
java.desktop provides javax.sound.sampled.spi.AudioFileWriter used by java.desktop
java.desktop provides javax.sound.sampled.spi.FormatConversionProvider used by java.desktop
java.desktop provides javax.sound.sampled.spi.MixerProvider used by java.desktop
java.logging provides jdk.internal.logger.DefaultLoggerFinder used by java.base
java.desktop provides sun.datatransfer.DesktopDatatransferService used by java.datatransfer
jdk.internal.jvmstat provides sun.jvmstat.monitor.MonitoredHostService used by jdk.internal.jvmstat
jdk.localedata provides sun.util.locale.provider.LocaleDataMetaInfo used by java.base
jdk.localedata provides sun.util.resources.LocaleData$CommonResourceBundleProvider used by java.base
jdk.localedata provides sun.util.resources.LocaleData$SupplementaryResourceBundleProvider used by java.base
// Use this jdk folder
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment