为什么 JDK 11 文件夹中没有 Tools.jar 文件

问题描述 投票:0回答:1

为什么 tools.jar 文件在 JDK 11 中被删除,任何人都可以解释一下。

造成这种情况的原因是什么?如果有人有任何文档,您可以分享删除 tools.jar 预期问题和解决方案的文档吗?

高版本是否添加了tools.jar,它们是什么?

有哪位好心人可以解答一下吗

java jar java-11
1个回答
0
投票
为什么 tools.jar 文件在 JDK 11 中被删除,任何人都可以解释一下。

它在 Java 9 中被删除......作为实现模块大修的一部分。事实上,整个 Java SE Java 代码库现在是通过 Java 平台模块系统(在运行时)交付的;请参阅

无法找到 Java SE 14 的tools.jar


造成这种情况的原因是什么?如果有人有任何文档,您可以分享文档删除“tools.jar”预期的问题和解决方案。

  1. 参见

    JEP 220:模块化运行时图像

  2. 主要问题是显而易见的:使用“tools.jar”的代码将不再工作。这是一个重大变化

  3. 在 Java 9+ 中运行时访问 Java 工具的方式是使用

    javax.tools.*

     模块中的 
    java.compiler
     API。这将需要重写一些代码。例如,请参阅 
    什么是 tools.jar 替换?

† - AFAIK,“tools.jar”文件并未被指定作为 Java 9 之前的 Java 平台的一部分。 JLS 或 JVM 规范或(据我所知)Java 9 之前的 javadocs 中没有提到它。它“只是一个实现细节”,并且......可以说......取决于实现细节,当这些细节发生变化时,你的代码更容易被破坏。


高版本是否添加了tools.jar,它们是什么?

不。事实并非如此。

© www.soinside.com 2019 - 2024. All rights reserved.