找不到Java SE 14的tools.jar

问题描述

tools.jar在最新的Java版本14中不存在。有人可以帮助我了解它是否已替换或在哪里?

我的系统有:

C:\Users\Admin>wmic os get osarchitecture
OSArchitecture
64-bit

我通过从Oracle's website下载jdk-14.0.2_windows-x64_bin.exe安装了最新的Java版本。

安装后,我查看了安装文件C:\Program Files\Java\jdk-14.0.2\lib,它没有tools.jar

我们是否需要为JRE安装其他任何有助于tools.jar的软件包?

如果不存在tools.jar,则替换什么?

解决方法

我们是否需要为JRE安装其他任何有助于tools.jar的软件包?

不。没有简单的解决方法。

如果不存在tools.jar,则替换什么?

没有直接替代品。相反,您必须更改应用程序,以使其不依赖于文件的存在。

Java 9+使用模块系统,而不是tools.jar,rt.jar等。 (请参见https://stackoverflow.com/a/63696760/139985

  • 如果依赖项在您自己的代码中,请更改代码,以使其可以通过Tools API访问Java编译器等。如果您的代码正在检查tools.jar的存在,请删除该检查并(如果需要)以其他方式检查。

  • 如果依赖关系是第三方代码(可能是工具),则需要将其升级到与您要使用的Java版本兼容的版本。

,

自JDK 9起生效,JEP 220删除了rt.jartools.jardt.jar和其他一些jar文件。

http://openjdk.java.net/jeps/220

已删除:rt.jar和tools.jar

以前存储在lib / rt.jar,lib / tools.jar,lib / dt.jar和其他各种内部JAR文件中的类和资源文件现在以更有效的格式存储在lib目录。这些文件的格式未指定,如有更改,恕不另行通知。

,

几分钟前我遇到了同样的问题。

我通过从 Ubuntu 终端输入以下命令下载了 openjdk-11-jdk-headless

$ sudo apt install openjdk-11-jdk-headless

然后,打开intellij idea中的project structure。快捷方式:(Ctrl+Alt+Shift+S)。

您可以查看我的屏幕截图以获取视觉指南。

选择jdk版本(openjdk 11 here)并将语言项目语言级别更改为11

enter image description here