jdk 9 及以上的jdk Could not find tools.jar

        我昨天在进行Flume HbaseSink源码修改的时候,发现了一个报错,它是提醒jdk.tools 1.8的缺失,missing了。我就上网查找怎么加入jdk.tools文件,这很容易一下子就找到了,而且看得出这应该是很多人都遇到过,并且很成熟的解决方法。

        方法就是在pom.xml文件中的依赖里添加。

    <dependency>
	  <groupId>jdk.tools</groupId>
	  <artifactId>jdk.tools</artifactId>
	  <version>1.8</version>
	  <scope>system</scope>
	  <systemPath>${JAVA_HOME}/lib/tools.jar</systemPath>
	</dependency>

        看起来挺简单的,但是一加进去就开始报错,说是tool.jar文件unable to be found ,找不到了,这文件不是missing就是unable to be found ,那我就去{JAVA_HOME}/lib/目录下找,果然找不到。

        想了想,我的jdk不应该啊,我正常安装,一步一步不应该出错导致文件丢失啊。后来就去网上查,原来jdk 9之后的tools.jar 和 dt.jar 文件被移除了,已经不用了。

        我一想那怎么办,那岂不是jdk.tools安装不了了,毕竟我是jdk 11啊,怎么办这项目咋进行下去呢。赶紧换jdk吧,从官网找了jdk 8 ,下载安装配置。过程中发现jdk 11 只需要配置环境变量里的path 和JAVA_HOME,而jdk 9 还要配置 CLASSPATH其中配置的是lib的位置。配置完康康cmd 里的java -version 改过来了,就马上去打开eclipse ,想着继续修改源码,用tools.jar 把jdk.tools加上,结果直接打不开了。我的eclipse应该是最新版的,2021-12版本,显示该Java 8 不支持当前版本的eclipse,需要更高版本的。

        好烦!!

        又换回来,重新更换jdk,重新cmd java -version ,换回Java 11。

        现在咋办,我左思右想,既然Java 8 有这个包,Java 11没这个包,我直接把Java 8的包复制到Java 11根目录下不就行了。复制过去之后,重启eclipse,然后clean一下,发现不报错了。

        欧耶!!!

参考:

关于JDK9或更高版本JDK:Could not find tools.jar,dt.jar【JDK环境变量配置问题总结】图文教程_扑在代码上的高尔基的博客-优快云博客_jdk9没有tools.jarJDK9或更高版本JDK:Could not find tools.jar,dt.jar从JDK9之后就已经没有tools.jar和dt.jar了,所以不需要在CLASSPATH里面配置这些jar了https://blog.youkuaiyun.com/Terminalxun/article/details/106443110

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cxy好好先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值