我试图下载并安装新的jdk来刷新我的java,但似乎jdk安装在lib目录中没有tools.jar
文件。我错过什么了吗?我试着从这个链接https://www.oracle.com/java/technologies/downloads/#jdk17-windows安装它我尝试了exe和msi,但似乎都不起作用,当我尝试运行代码时,我得到Error:Cannot determine path to 'tools.jar' library for 17 (C:Program FilesJavajdk-17)
我试图搜索这个问题,但大多数问题都是由安装jre
的人提出的,或者没有设置set "JAVA_HOME=C:Program FilesJavajdk-17"
的人
>java --version
java 17 2021-09-14 LTS
Java(TM) SE Runtime Environment (build 17+35-LTS-2724)
Java HotSpot(TM) 64-Bit Server VM (build 17+35-LTS-2724, mixed mode, sharing)
tools.jar
主要包含javac
(编译器)。
从JDK8到JDK9的转换打破了大量的java内容。包括移走这个罐子。它现在在一个模块中。无论什么软件正在寻找tools.jar,它都不会与这个新模型兼容。Oracle隐藏的想法是,这些都没有被规范,公平地说,Oracle/OpenJDK并没有。换句话说,依赖于"tools.jar"从来都不被支持,但话说回来,依赖于它的东西想要编译java代码。除了在应用程序中附带编译器之外,没有其他选择,因为它有许可证问题。
无论如何,解决方案很简单:要么升级导致这个错误的软件,要么如果你已经升级了,就降级到JDK8。
请注意,您可以在单个系统上安装多个jdk,例如,您可以在JDK8上运行intellij,然后在其中编写针对jDK17的java代码,没有问题。
直接从链接:http://www.java2s.com/Code/Jar/t/Downloadtools180jar.htm下载tools.jar文件然后将tools.jar文件添加到JDK file lib文件夹中。它将解决错误