无法找到Java SE 14的tools.jar
无法找到Java SE 14的tools.jar,java,tools.jar,Java,Tools.jar,tools.jar在最新的Java版本14中不存在。有谁能帮我弄清楚它是否被更换了,或者在哪里 我的系统有: C:\Users\Admin>wmic os get osarchitecture OSArchitecture 64-bit 我通过从下载jdk-14.0.2_windows-x64_bin.exe安装了最新的Java版本 安装后,我查看了安装文件夹C:\ProgramFiles\Java\jdk-14.0.2\lib,它没有tools.jar 我们是否需要为JRE安装任何有助
tools.jar
在最新的Java版本14中不存在。有谁能帮我弄清楚它是否被更换了,或者在哪里
我的系统有:
C:\Users\Admin>wmic os get osarchitecture
OSArchitecture
64-bit
我通过从下载jdk-14.0.2_windows-x64_bin.exe
安装了最新的Java版本
安装后,我查看了安装文件夹C:\ProgramFiles\Java\jdk-14.0.2\lib
,它没有tools.jar
我们是否需要为JRE安装任何有助于tools.jar
的其他软件包
如果tools.jar
不存在,那么替换内容是什么?从Java 9开始删除
自生效以来,删除了rt.jar
、tools.jar
、dt.jar
和其他一些jar文件
引用JEP的话:
删除:rt.jar和tools.jar
以前存储在lib/rt.jar、lib/tools.jar、lib/dt.jar和各种其他内部jar文件中的类和资源文件现在以更高效的格式存储在lib目录中的特定于实现的文件中。这些文件的格式未指定,如有更改,恕不另行通知
我们是否需要为JRE安装其他有助于tools.jar的软件包
不,没有简单的解决办法
如果tools.jar不存在,替换内容是什么
没有直接的替代品。相反,您必须更改应用程序,使其不依赖于文件的存在
Java9+使用的是而不是tools.jar、rt.jar等等。见Giorgi Tsiklauri的
- 如果依赖项在您自己的代码中,请更改代码,以便它通过Tools API访问Java编译器等。如果您的代码正在检查tools.jar是否存在,请删除该检查,然后(如有必要)以其他方式进行检查
- 如果依赖项在第三方代码(可能是工具)中,则需要将其升级到与您尝试使用的Java版本兼容的版本
- 几分钟前我也遇到了同样的问题
我从Ubuntu终端键入以下命令下载了
openjdk-11-jdk-headless
:
$sudo apt安装openjdk-11-jdk-headless
然后,打开intellij idea中的项目结构。快捷方式:(Ctrl+Alt+Shift+S
)
你可以看到我的屏幕截图作为视觉指南
在那里选择jdk
版本(此处为openjdk 11)
,并将语言项目语言级别更改为11
可能相关:。简而言之,将其他工具更新到不再依赖于tools.jar
@LauraLiparulo的版本。您的链接引用了Jdk 1.7。@Pshemo解释了部分原因,但没有完全回答“JEP 220删除了众所周知且经常引用的JARs rt.jar和tools.jar。根据其描述,”以前存储在lib/rt.jar、lib/tools.jar、lib/dt.jar和各种其他内部jar文件中的类和资源文件现在将以更高效的格式存储在lib目录中的特定于实现的文件中。“@lauralparulo您的链接指的是Jdk 1.7。正确..那么tools.jar的功能已被替换为?”JAR文件现在以更高效的格式存储在lib目录中的特定于实现的文件中。”-引用答案。不同的功能进入不同的(对应的)目录文件。@Madala JDK特定模块。例如,javac
在JDK.compiler
模块中,javadoc
在JDK.javadoc
模块中,等等(尽管要注意javac
和javadoc
您可能需要依赖标准java.compiler
模块,除非您需要访问低级别、特定于供应商、不一定稳定的API)。