如何在使用 Java 11 进行调试期间避免“仅引导加载程序类支持共享,因为已附加引导类路径”警告?

新手上路,请多包涵

最近我切换到 Java 11 并开始调试我的应用程序并看到此消息:

OpenJDK 64 位服务器 VM 警告:仅引导加载程序类支持共享,因为已附加引导类路径

只找到了 这个 committicket ,但它并没有告诉我太多。

我需要担心吗?

原文由 Dmitriy Dumanskiy 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 3.2k
2 个回答

在尝试将调试器与 IntelliJ IDEA 一起使用时,我在安装 jdk-12.0.1_windows-x64_bin.zip 后也遇到了这个问题。我收到错误消息( Java HotSpot™ 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended )。我也发现,进入设置并搜索异步并取消选中检测代理框。为我工作! 异步设置

原文由 Dave 发布,翻译遵循 CC BY-SA 4.0 许可协议

您可以忽略此警告。这只是意味着对于未由引导类加载器加载的类,类数据共享被禁用。

改善启动时间 […] 到应用程序类数据共享

JVM 使用引导类加载器加载一些 JDK 类,使用系统类加载器加载其余类,但将所有这些类都包含在其默认存档中。当 IntelliJ 执行您的项目时,它通过附加到该类路径(消息的第二部分)告诉 JVM 使用引导类加载器加载一些代码。现在,这意味着包含由系统类加载器加载的类的存档部分可能无效,因此 JVM 部分停用共享(消息的第一部分)。

您可以使用 -Xshare:off 完全禁用类数据共享,但会损失一些性能。

原文由 Martin 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题