Skip to content
Java 21 API
Initializing search
eclipse-openj9/openj9
eclipse-openj9/openj9
About the docs
OpenJ9 builds
Getting started
New to OpenJ9?
Release notes
Release notes
Overview
Version 0.48.0
Version 0.47.0
Version 0.46.1
Version 0.46.0
Version 0.45.0
Version 0.44.0
Version 0.43.0
Version 0.42.0
Version 0.41.0
Version 0.40.0
Version 0.39.0
Version 0.38.0
Version 0.37.0
Earlier releases
Earlier releases
Version 0.36.x
Version 0.35.0
Version 0.33.x
Version 0.32.0
Version 0.30.1
Version 0.30.0
Version 0.29.1
Version 0.29.0
Version 0.27.1
Version 0.26.0
Version 0.25.0
Version 0.24.0
Version 0.23.0
Version 0.22.0
Version 0.21.0
Version 0.20.0
Version 0.19.0
Version 0.18.1
Version 0.17.0
Version 0.16.0
Version 0.15.1
Version 0.14.0
Version 0.13.0
Version 0.12.0
Version 0.11.0
Version 0.10.0
Version 0.9.0
Version 0.8.0
Migrating
Migrating
Migrating from Java 8 to Java 11
Migrating from Java 11 to Java 17
Migrating from Java 17 to Java 21
Configuring your system
Memory management
Memory management
Heap allocation
Garbage Collection (GC)
GC policies
Troubleshooting GC
Troubleshooting GC
Verbose GC logs
Log examples
JIT Compiler
JITServer technology
JITServer tuning
AOT Compiler
Class data sharing
Class data sharing
Introduction
Diagnosing problems
CRIU
CRIU
CRIU support
Command-line options
Command-line options
-Dorg.eclipse.openj9.criu.ImmutableEnvVars
-Xrs:onRestore / -Xrs:syncOnRestore
-Xshareclasses:disableOnRestore
-XX:CheckpointGCThreads
-XX:Compatibility
-XX:[+|-]CRIURestoreNonPortableMode
-XX:[+|-]CRIUSecProvider
-XX:[+|-]EnableCRIUSupport
-XX:[+|-]IgnoreUnrecognizedRestoreOptions
Java Attach API
Security
Security
OpenSSL
Enhancements to OpenJDK security
Diagnostics
Diagnostics
Overview
Dumps
Dumps
Java dump
Heap dump
System dump
Tools
Tools
Dump extractor
Dump viewer
Trace formatter
Option builder
Java command (jcmd) tool
Java memory map (jmap) tool
Java process status (jps)
Java stack (jstack) tool
Java statistics monitoring (jstat) tool
Switching to OpenJ9
Interfaces
Interfaces
JVMTI
DTFJ
Language Management
Command-line options
Command-line options
Specifying options
Standard options
Switching to OpenJ9
System property options
System property options
Using System properties
-Dcom.ibm.enableClassCaching
-Dcom.ibm.enableLegacyDumpSecurity
-Dcom.ibm.enableLegacyLogSecurity
-Dcom.ibm.enableLegacyTraceSecurity
-Dcom.ibm.gpu.disable
-Dcom.ibm.gpu.enable
-Dcom.ibm.gpu.verbose
-Dcom.ibm.lang.management.OperatingSystemMXBean.isCpuTime100ns
-Dcom.ibm.lang.management.verbose
-Dcom.ibm.oti.shared.SharedClassGlobalFilterClass
-Dcom.ibm.tools.attach.command_timeout
-Dcom.ibm.tools.attach.directory
-Dcom.ibm.tools.attach.displayName
-Dcom.ibm.tools.attach.enable
-Dcom.ibm.tools.attach.fileAccessUpdateTime
-Dcom.ibm.tools.attach.id
-Dcom.ibm.tools.attach.logging
-Dcom.ibm.tools.attach.log.name
-Dcom.ibm.tools.attach.retry
-Dcom.ibm.tools.attach.shutdown_timeout
-Dcom.ibm.tools.attach.timeout
-Dfile.encoding
-Djava.compiler
-Djava.lang.string.substring.nocopy
-Djava.lang.stringBuffer.growAggressively
-Djdk.nativeCBC
-Djdk.nativeChaCha20
-Djdk.nativeCrypto
-Djdk.nativeDigest
-Djdk.nativeEC
-Djdk.nativeECKeyGen
-Djdk.nativeXDHKeyAgreement
-Djdk.nativeXDHKeyGen
-Djdk.nativeGCM
-Djdk.nativeRSA
JVM -X options
JVM -X options
Using -X options
-X
-Xaggressive
-Xalwaysclassgc
-Xaot
-Xargencoding
-Xbootclasspath
-XCEEHDLR
-Xcheck
-Xclassgc
-Xcodecache
-Xcodecachetotal
-Xcomp
-Xcompactexplicitgc
-Xcompactgc
-XcompilationThreads
-Xcompressedrefs
-Xconcurrentbackground
-Xconcurrentlevel
-Xconcurrentslack
-Xconmeter
-Xdisableexcessivegc
-Xdisableexplicitgc
-Xdisablejavadump
-Xdisablestringconstantgc
-Xdump
-XdynamicHeapAdjustment
-Xenableexcessivegc
-Xenableexplicitgc
-Xenablestringconstantgc
-Xfastresolve
-Xfuture
-Xgc
-Xgc:splitheap
-Xgcmaxthreads
-Xgcpolicy
-Xgcthreads
-Xgcworkpackets
-Xint
-Xiss
-Xjit
-Xjni
-Xlinenumbers
-Xloa
-Xloainitial
-Xloamaximum
-Xloaminimum
-XlockReservation
-Xlockword
-Xlog
-Xlp
-Xlp:codecache
-Xlp:objectheap
-Xmaxe
-Xmaxf
-Xmaxt
-Xmca
-Xmco
-Xmcrs
-Xmine
-Xminf
-Xmint
-Xmn
-Xmns
-Xmnx
-Xmo
-Xmoi
-Xmos
-Xmox
-Xmr
-Xmrx
-Xms
-Xmso
-Xmx
-Xnoaot
-Xnoclassgc
-Xnocompactexplicitgc
-Xnocompactgc
-Xnocompressedrefs
-Xnojit
-Xnolinenumbers
-Xnoloa
-Xnosigcatch
-Xnosigchain
-Xnuma:none
-Xoptionsfile
-Xquickstart
-Xrs
-Xrunjdwp
-XsamplingExpirationTime
-Xscdmx
-Xscmaxaot
-Xscmaxjitdata
-Xscminaot
-Xscminjitdata
-Xscmx
-Xshareclasses
-Xsigcatch
-Xsigchain
-Xsignal
-Xsoftmx
-Xsoftrefthreshold
-Xss
-Xssi
-Xsyslog
-Xtgc
-Xthr
-XtlhPrefetch
-Xtrace
-Xtune:virtualized
-Xverbosegclog
-Xverify
-Xzero
JVM -XX options
JVM -XX options
Using -XX options
-XXActiveProcessorCount
-XX:[+|-]AdaptiveGCThreading
-XXallowvmshutdown
-XX:[+|-]AlwaysPreTouch
-XX:[+|-]ClassRelationshipVerifier
-XX:ConcGCThreads
-XX:codecachetotal
-XX:codecachetotalMaxRAMPercentage
-XX:[+|-]CompactStrings
-XX:ContinuationCache
-XX:[+|-]CpuLoadCompatibility
-XX:DiagnoseSyncOnValueBasedClasses
-XX:[+|-]DisableExplicitGC
-XX:[+|-]DisclaimJitScratch
-XX:[+|-]Enable3164Interoperability
-XX:[+|-]EnableCPUMonitor
-XX:[+|-]EnableDynamicAgentLoading
-XX:[+|-]EnableExtendedHCR
-XX:[+|-]EnsureHashed
-XX:[+|-]ExitOnOutOfMemoryError
-XX:[+|-]GlobalLockReservation
-XX:[+|-]HandleSIGABRT
-XX:[+|-]HandleSIGUSR2
-XX:[+|-]HandleSIGXFSZ
-XX:[+|-]HeapDumpOnOutOfMemory
-XX:HeapDumpPath
-XX:[+|-]HeapManagementMXBeanCompatibility
-XX:[+|-]IdleTuningCompactOnIdle
-XX:[+|-]IdleTuningGcOnIdle
-XX:IdleTuningMinFreeHeapOnIdle
-XX:IdleTuningMinIdleWaitTime
-XX:[+|-]IgnoreUnrecognizedVMOptions
-XX:[+|-]IgnoreUnrecognizedXXColonOptions
-XX:InitialRAMPercentage
-XX:InitialHeapSize
-XX:[+|-]InterleaveMemory
-XX:[+|-]IProfileDuringStartupPhase
-XX:[+|-]JITInlineWatches
-XX:JITServerAddress
-XX:JITServerAOTCacheDir
-XX:[+|-]JITServerAOTCacheIgnoreLocalSCC
-XX:JITServerAOTCacheName
-XX:[+|-]JITServerAOTCachePersistence
-XX:JITServerAOTmx
-XX:[+|-]JITServerLocalSyncCompiles
-XX:[+|-]JITServerLogConnections
-XX:JITServerMetrics
-XX:JITServerMetricsPort
-XX:JITServerMetricsSSLCert
-XX:JITServerMetricsSSLKey
-XX:JITServerPort
-XX:JITServerShareROMClasses
-XX:JITServerSSLCert
-XX:JITServerSSLKey
-XX:JITServerSSLRootCerts
-XX:JITServerTimeout
-XX:[+|-]JITServerUseAOTCache
-XX:[+|-]LazySymbolResolution
-XX:[+|-]LegacyXLogOption
-XX:MaxDirectMemorySize
-XX:MaxHeapSize
-XX:MaxRAMPercentage
-XX:[+|-]MergeCompilerOptions
-XX:OnOutOfMemoryError
-XX:[+|-]OpenJ9CommandLineEnv
-XX:[+|-]OriginalJDK8HeapSizeCompatibilityMode
-XXnosuballoc32bitmem
-XX:[+|-]PageAlignDirectMemory
-XX:ParallelCMSThreads
-XX:ParallelGCMaxThreads
-XX:ParallelGCThreads
-XX:[+|-]PerfTool
-XX:[+|-]PortableSharedCache
-XX:[+|-]PositiveIdentityHash
-XX:[+|-]PrintCodeCache
-XX:[+|-]PrintFlagsFinal
-XX:[+|-]ReadIPInfoForRAS
-XX:[+|-]ReduceCPUMonitorOverhead
-XX:[+|-]RequireJITServer
-XX:[+|-]RuntimeInstrumentation
-XXsetHWPrefetch
-XX:[+|-]ShareAnonymousClasses
-XX:ShareClassesDisableBCI
-XX:ShareClassesEnableBCI
-XX:SharedCacheHardLimit
-XX:[+|-]ShareOrphans
-XX:[+|-]ShareUnsafeClasses
-XX:[+|-]ShowCarrierFrames
-XX:[+|-]ShowCodeDetailsInExceptionMessages
-XX:[+|-]ShowHiddenFrames
-XX:[+|-]ShowNativeStackSymbols
-XX:[+|-]ShowUnmountedThreadStacks
-XX:-StackTraceInThrowable
-XX:[+|-]TransparentHugePage
-XX:[+|-]UseCompressedOops
-XX:[+|-]UseContainerSupport
-XX:[+|-]UseGCStartupHints
-XX:[+|-]UseJITServer
-XX:[+|-]UseNoGC
-XX:[+|-]UseZlibNX
-XX:[+|-]UTFCache
-XX:[+|-]VerboseVerification
-XX:[+|-]VMLockClassLoader
Reference
Reference
Supported environments
Default settings
Signal handling
Directory conventions
OpenJ9 messages
Environment variables
API documentation
API documentation
Overview
Java 8 API
Java 8 API
Condition exception handling
CUDA4J
Data access acceleration
DTFJ
GPU
JVM diagnostic utilities
Monitoring and management
Shared classes
Java 11 API
Java 17 API
Java 21 API
Java 23 API
Legal
OpenJ9 JDK 21 API documentation