Dmi*_*kiy 39 java intellij-idea classloader java-11
最近,我切换到Java 11并开始调试应用程序,并看到以下消息:
OpenJDK 64位服务器VM警告:引导加载程序类仅支持共享,因为已附加了引导程序类路径
我需要担心吗?
Dav*_*ave 32
jdk-12.0.1_windows-x64_bin.zip尝试将调试器与IntelliJ IDEA一起使用时,安装后我也遇到了这个问题。我收到(Java HotSpot(TM)64位服务器VM警告:由于引导程序类路径已附加,仅支持引导加载程序类共享)。我也发现,进入“设置”并搜索“异步”并取消选中“检测代理”框。为我工作!

Mar*_*tin 12
您可以忽略此警告。这只是意味着对于未由引导类加载器加载的类禁用类数据共享。
JVM 使用引导类加载器加载一些 JDK 类,使用系统类加载器加载其余的类,但将所有这些类都包含在其默认存档中。当 IntelliJ 执行您的项目时,它会告诉 JVM 通过附加到该类路径(消息的第二部分)使用引导类加载器加载一些代码。现在,这意味着包含系统类加载器加载的类的归档部分可能无效,因此 JVM 部分停用共享(消息的第一部分)。
您可以使用 完全禁用类数据共享-Xshare:off,但会损失一些性能。
小智 9
鉴于 IntelliJ 中的此警告是无害的(请参阅/sf/answers/4056992201/),您可以通过右键单击该行并选择“像这样折叠行”来从控制台视图中隐藏该行
完成此操作后,您将看到:
"C:\Program Files\Java\jdk-17.0.2\bin\java.exe" ... <1 internal line>
Run Code Online (Sandbox Code Playgroud)
对我来说,这个问题只发生在我在 Docker 中运行时,以及当我使用像 DataDog APM 代理 ( -javaagent:/dd-java-agent.jar)这样的 java 命令行代理时。当我在我的 JDK11 运行时环境(没有代理)中运行时,我没有收到警告。
| 归档时间: |
|
| 查看次数: |
14355 次 |
| 最近记录: |