jdk.internal.包是干什么的
时间: 2024-02-18 17:27:45 浏览: 30
在Java平台中,jdk.internal包通常被认为是Java平台内部使用的包,包含了一些Java实现的内部工具类和功能。这些类通常不是公共API的一部分,因此在正常的Java开发中不建议直接使用它们。这些类的实现可能随着Java平台的版本而发生变化,因此不应该被认为是稳定的API。在编写Java应用程序时,应该尽可能使用公共API,而不是依赖于jdk.internal包中的类。
相关问题
程序包jdk.internal.access不存在
这个错误通常出现在Java代码中使用了JDK内部API。JDK内部API是Java平台内部使用的API,不应该被外部代码使用。在Java 9及以上版本中,这些API被标记为不推荐使用,而在Java 16中则被彻底删除了。
如果你的代码中使用了JDK内部API,可以考虑使用其他替代API来替换它们。如果你无法找到替代API,可以考虑使用Java命令行选项“--illegal-access=permit”来允许访问这些API,但这并不推荐,因为这可能会导致代码在其他Java版本或实现中无法运行。
jdk11启动 报jdk.internal.jline不存在
这个问题可能是因为您的应用程序使用了 jline 库,而 JDK 11 不再包含 jline 库的原因导致的。您可以通过以下两种方法来解决这个问题:
1. 在您的应用程序中使用最新版本的 jline 库,该库已经与 JDK 11 兼容。
2. 如果您无法更新库,则可以在启动应用程序时添加以下参数:--add-modules jdk.internal.jvmstat,jdk.management,jdk.unsupported。这些模块包含了 jline 库所需的类。例如:
java --add-modules jdk.internal.jvmstat,jdk.management,jdk.unsupported -jar yourapp.jar
请注意,使用这种方法可能会导致应用程序在其他 JDK 版本中无法运行。