pinpoint-apm/pinpoint · warning
Dump JDK info java.vm.name:{} java.version:{}
Error message
Dump JDK info java.vm.name:{} java.version:{} What it means
This is a diagnostic warning dumped by JavaLangAccessHelper when it cannot resolve or load the internal jdk.internal.misc.JavaLangAccess accessor on the current JDK. It logs the JVM name and version so maintainers can identify an unsupported JDK build. The agent's JDK9 class-definition feature may be disabled or non-functional as a result.
Source
Thrown at agent-module/profiler-optional/profiler-optional-jdk9/src/main/java/com/navercorp/pinpoint/profiler/instrument/classloading/JavaLangAccessHelper.java:47
// Java 9 version over and after
private static final String MISC_SHARED_SECRETS_CLASS_NAME = "jdk.internal.misc.SharedSecrets";
private static final String MISC_JAVA_LANG_ACCESS_CLASS_NAME = "jdk.internal.misc.JavaLangAccess";
// Java 12 version over and after
private static final String ACCESS_SHARED_SECRETS_CLASS_NAME = "jdk.internal.access.SharedSecrets";
private static final String ACCESS_JAVA_LANG_ACCESS_CLASS_NAME = "jdk.internal.access.JavaLangAccess";
private static final JavaLangAccess JAVA_LANG_ACCESS = newJavaLangAccessor();
private JavaLangAccessHelper() {
}
public static JavaLangAccess getJavaLangAccess() {
return JAVA_LANG_ACCESS;
}
// for debugging
private static void dumpJdkInfo() {
logger.warn("Dump JDK info java.vm.name:{} java.version:{}", JvmUtils.getSystemProperty(SystemPropertyKey.JAVA_VM_NAME), JvmUtils.getSystemProperty(SystemPropertyKey.JAVA_VM_VERSION));
}
private static JavaLangAccess newJavaLangAccessor() {
try {
Class.forName(MISC_JAVA_LANG_ACCESS_CLASS_NAME, false, JavaLangAccess.class.getClassLoader());
return new JavaLangAccess9();
} catch (ClassNotFoundException ignored) {
// ignore
}
try {
// https://github.com/naver/pinpoint/issues/6752
// Oracle JDK11 : jdk.internal.access
// openJDK11 = jdk.internal.misc
Class.forName(ACCESS_SHARED_SECRETS_CLASS_NAME, false, JavaLangAccess.class.getClassLoader());
return new JavaLangAccess11();
} catch (ClassNotFoundException ignored) {
// ignoreView on GitHub (pinned to 744c3d3075)
Solutions
- Compare the dumped java.vm.name/java.version with the JDK compatibility matrix of your Pinpoint agent version and upgrade the agent
- For JDK 15+, the class moved to jdk.internal.access.JavaLangAccess; use a Pinpoint agent version that supports it
- Add the required --add-exports/--add-opens JVM flags for internal JDK packages
- Run the agent on a JDK version officially supported by the agent build
Example fix
// before: running on JDK 16 with an agent built for JDK 9-11 // after: pin JVM or agent // JAVA_OPTS="$JAVA_OPTS -Djava.version-compatible" -> use pinpoint-agent supporting your JDK // e.g. agent 2.4.x+ for JDK 17, or run on JDK 11
Defensive patterns
Strategy: validation
Validate before calling
String ver = System.getProperty("java.version");
boolean supported = ver.startsWith("1.8") || ver.startsWith("9.") || ver.startsWith("11."); Prevention
- Verify your JDK version against Pinpoint's supported list before deploying the agent
- Read the dumped java.vm.name/java.version to identify unsupported builds
- Add required --add-exports flags for JDK internal packages when applicable
When it happens
Trigger: newJavaLangAccessor() failing Class.forName("jdk.internal.misc.JavaLangAccess") or its setup, which triggers dumpJdkInfo to record java.vm.name and java.version before falling back.
Common situations: Running the Pinpoint agent on a JDK 9+ build where jdk.internal.misc was moved/renamed (e.g. newer JDK using jdk.internal.access.JavaLangAccess); unsupported vendor JVM; missing --add-exports for internal packages.
Understand the failure class
Background: "unsupported platform" / "not supported on this platform" errors: what they mean and how to fix them — this error's family across 47 libraries.
Related errors
- {} define fail cl:{} Caused by:{}
- ${name} define fail Caused by:${e.getMessage()}
- JavaLangAccess not found
- ${interceptorClassName} not found Caused by:${ex.getMessage(
- not found interceptorHolderClass, className=
AI-assisted analysis of pinpoint-apm/pinpoint@744c3d3075 (2026-09-07).
Data as JSON: /api/errors/7f1c657b81304377.
Report an issue: GitHub.