问题标签 [tools.jar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 如何在 Windows 上获取 OpenJDK 11 的 tools.jar?
背景:我正在尝试使用此处找到的说明为 Windows 构建 Hadoop 。我有OpenJDK 11并且在运行时遇到了以下问题mvn package
:
Could not resolve dependencies for project org.apache.hadoop:hadoop-annotations:jar:2.5.0-SNAPSHOT: Could not find artifact jdk.tools:jdk.tools:jar:1.6 at specified path C:\Program Files\Java\jdk-11.0.1\..\lib\tools.jar
我意识到tools.jar
OpenJDK 11 的 Windows 版本中不存在。我是否也必须从源代码构建它?如何获得tools.jar
OpenJDK 11 的 Maven 工件?
java - 使用 jdk11 运行 java 代码,但使用 jdk8 中的 tools.jar
程序用JDK8编译。我想用 JDK11 运行代码(无需用 JDK11 重新编译代码)。
问题是程序使用来自JDK8 tools.jar的类(现在在jdk11的jdk.compiler模块中的类,tools.jar被添加到类路径中)。在 JDK11 中,工具没有单独的 jar,而是 JDK11 的一部分。所以存在类冲突(类在 JDK11 中,也在类路径上的 tools.jar 中)。JDK11 中的类优先于 tools.jar 中的类。有没有可能告诉JVM它应该使用tools.jar中的类而不是JDK11中的类。
更新 正如我所说,我无法使用 JDK11 重新编译代码。我知道Java9中引入的Java模块系统。我要问的是是否有可能告诉 JVM 忽略 JDK11 模块 jdk.compiler 中的类,而不是使用他在类路径中找到的类。
java - 在活动的 JRE 中找不到 tools.jar - Spring Tools Suite
我知道有很多关于这个的话题,但没有一个是关于 Spring Tools Suite 的。而且我发现该文件不再存在于较新的 Java 版本中的信息,这似乎是真的,因为我找不到它。我现在完全迷路了。
java - 在 JDK9 及更高版本中使用 tools.jar
在我的项目中,出于检测目的,我依赖于 tools.jar。如果没有 jdk9 及更高版本中的 tools.jar(也在 JD11 中),我可以在哪里以及如何解决依赖关系?
有没有人遇到过同样的情况?
问候,
java - 通过命令行调用时 SpringTools Suite 中缺少 tools.jar
我看到以下屏幕:
通过脚本启动 STS 时:
这是我的SpringToolSuite4.ini
:
JAVA_HOME
环境变量定义:
根据 Eclipse 文档:
-vm(可执行文件,主要)
当传递给 Eclipse 可执行文件时,此选项用于定位用于运行 Eclipse 的 Java VM。它应该是相应的完整文件系统路径:Java jre/bin 目录、Java 可执行文件、Java 共享库(jvm.dll 或 libjvm.so)或 Java VM 执行环境描述文件。如果未指定,Eclipse 可执行文件将使用搜索算法来定位合适的 VM。无论如何,可执行文件然后使用 -vm 参数将路径传递给用于 Java Main 的实际 VM。Java Main 然后将此值存储在 eclipse.vm 中。
我检查了可能的指针并尝试了不同的配置变体,即:
- 从其 .exe 文件而不是从上述脚本启动 STS,然后指定工作区
- 将
-vm
选项放入.ini
文件之前-vmargs
- 指向
-vm
包含 的文件夹,java.exe
而不是指向该特定文件 - 指向
javaw.exe
而不是java.exe
- 指向
-vm
JRE 目录而不是 JDK 目录。 - 等等
同样的错误仍然存在。
看起来有些东西将 STS 重定向到内部C:\Program Files\Java\jre1.8.0_191
而不是我指向的地方C:\Java\jdk1.8.0_144\bin
。C:\Java\jdk1.8.0_144\jre\bin
这里有什么问题?
先感谢您。
更新:
正如马丁所建议的,以下修改:
如果通过双击 STS 可执行文件来调用,则会打开 2 个 STS 窗口:一个常规 STS 窗口(现在没有初始缺失tools.jar
提示)加上这个:
但是,当从命令行通过脚本运行时,和以前一样,无法完全打开 STS:
最终的解决方案:
正如 Martin 在他的评论中正确指出的那样,上述脚本存在几个问题:
-vm
后面需要一个空格和 JDK 的路径- 重复
-vmargs
是导致最初错误行为的罪魁祸首 - 指向
javaw.exe
而不是java.exe
有助于隐藏第二个窗口。 -XX:MaxPermSize=256m
在 Java 8 下不再需要。
考虑到上述情况,以下是现在的工作:
1)SpringToolSuite4.ini
可以保持不变,没有必要(尽管它可能并且有效)在我之前的更新中指出的那样添加到JDK的路径:
2) 现在可以通过以下方式成功调用 STS(在 Windows 上):
java - JEP 220 更改后,tools.jar 等价物是否预装了 JRE?
迁移指南似乎指出,在JEP 220之后,JDK 和 JRE 都安装在lib
目录中
动态链接库和 JDK 的完整内部实现。
既然它说“完整”,这是否意味着,例如,tools.jar
以前没有随 JRE 一起提供,现在确实作为libjvm
? 的一部分在 JRE 上提供。
分析 Ubuntu 软件包
似乎 JDK 版本没有在下安装任何额外的东西,lib/
尽管它确实在jmods/
. AFAIU,.jmods
如果一个带有模块化图像的应用程序是相关的,但是它们不是构建应用程序所必需的吗?
我知道在 JDK9 之前的世界中已经多次问过类似的问题,但是在 JEP 220 引入重大更改之后,JDK 安装提供了哪些额外的 API,而不仅仅是 JRE 安装提供的?
java - Unable to locate tools.jar for Java SE 14
tools.jar
is not present in latest Java version 14. Can anyone help me to understand whether it is replaced or where it is?
My system is having:
I have installed latest Java version by downloading jdk-14.0.2_windows-x64_bin.exe
from Oracle's website.
After Installation, I looked in installation folder C:\Program Files\Java\jdk-14.0.2\lib
and it is not having tools.jar
.
Do we need to install any other packages for JRE that would help with tools.jar
?
If tools.jar
is not present, what is the replacement?
java - 应用程序遇到问题。类路径引用的存档 C:/Program Files/Java/jre1.8.0_251/lib/tools.jar.jar 不存在
我尝试手动添加 tools.jar 文件(如 StackOverflow 的另一个问题的回答中所建议的那样),但这并没有解决问题。此错误首先发生在我的笔记本电脑上最后一次更新 Java 时。关于如何消除此错误消息并让 Eclipse 再次工作的任何建议?
java - 注释处理器中的 Java 源代码修改
有没有什么方法可以使用 java>9 来做与本文中所做的类似的事情,它将 final 修饰符添加到私有变量中?
我知道 tools.jar 已被声明为旧版,但 lombok 如何在 java11 中仍然有效?
我知道这里描述的一些树可以让你解析代码,但你不能篡改它。还有其他选择吗?使 tools.jar 不可用的原因是什么?(我知道如果您添加一些 JVM 标志,它仍然可以使用,但谁会想要使用可以在不通知的情况下更改的东西)。
java - 无法在 Maven 项目中解析 com.sun:tools:0?
我最近一直在使用测试自动化。
我现在熟悉了几种工具、框架、依赖项等,例如 Selenium、JUNits、TestNG,它们可以帮助我管理我作为 QA 工程师的日常工作。
我经常使用 Selenium 和 TestNG 来构建我的解决方案,以及在 MacOs Catalina 版本 10.15.7 上运行的Mac 上运行的最新 JDK 版本 (jdk-15.0.1) 上运行的 IntelliJ IDEA。
我已经为我的项目配置了 mi POM.mxl 文件,并且从一开始它就在控制台上显示以下错误:
Cannot resolve com.sun:tools:0
我总是忽略这一点,因为我的 IDE 中的项目总是编译和运行,而且我从未使用过该依赖项。但是现在我正在尝试在我的 Mac 中使用终端的 maven 支持运行我的项目,并且由于 sun:tools.jar 依赖项,我不允许编译我迄今为止开发的任何工作项目。
我已经阅读了很多关于具有相同 sun:tools:jar 依赖项的类似问题的类似线程,例如:
我已经做了所有的事情,但是很多解决方案都是基于在 jdk 安装目录中找到tools.jar文件。由于我使用的是 JDK 15,因此此依赖项已被删除:
删除:rt.jar 和 tools.jar
以前存储在 lib/rt.jar、lib/tools.jar、lib/dt.jar 和各种其他内部 JAR 文件中的类和资源文件现在以更有效的格式存储在 lib 目录中的特定于实现的文件中。这些文件的格式未指定,如有更改,恕不另行通知。
我附上了我从终端收到的确切错误消息: