maven报错Missing artifact jdk.tools:jdk.tools:jar:1.8,添加jdk.tools依赖依然报错
错误为:Missing artifact jdk.tools:jdk.tools:jar:1.8和The container ‘Maven Dependencies’ references non existing library ‘D:\maven3.6.3\Repository\jdk\tools\jdk.tools\1.8\jdk.tools-1.8.jar’
网上说要添加jdk.tools依赖,问题是我已经添加了,依然报错。
<dependency>
<groupId>jdk.tools</groupId>
<artifactId>jdk.tools</artifactId>
<version>1.8</version>
<scope>system</scope>
<systemPath>${JAVA_HOME}/lib/tools.jar</systemPath>
</dependency>
后面貌似找到了解决方法,打开eclipse的安装目录,打开 eclipse.ini,找到 -vm 的下一行,将其改为 java安装目录\jre\bin\server\jvm.dll。(我这里换了另一个jdk,你只需要在你的jdk后面加就行)
注意:-vm的位置一定要在-vmargs的前面,否则-vm不生效。
修改完重启eclipse。可能到这里有的小伙伴已经解决问题了,但是我还是报错。。。
可能是我对应的目录下没有jdk.tools-1.8.jar,那我就去找这个jar包。这个包是在 java安装目录\lib 下的 tools.jar。
可是我的JDK下的lib没有tools.jar和dt.jar,出现这个问题的原因是在JDK安装时将JDK和JRE放在了同一目录下,导致了文件的覆盖,致使tools.jar包被覆盖。。。没办法,再装一次JDK。
之后把tools.jar复制到maven仓库对应的地方(就是你报错的那个地方,我是D:\maven3.6.3\Repository\jdk\tools\jdk.tools\1.8\),复制过去,重命名为 jdk.tools-1.8.jar。可能到这里有的小伙伴已经解决问题了,但是我还是报错。。。
在网上搜了一下,需要做以下步骤:选中工程 —> 右键,Maven —> Disable Maven Nature,然后重新在项目上右击Configure —> Convert to Maven Project。然后没有报错了 ????
但还有一个警告 The compiler compliance specified is 1.7 but a JRE 1.8 is used。
解决方法:选中工程 —> 右键,Properties —> Java Compiler,将Compiler compliance level改为1.8,再点击Apply and close。
没有警告和错误 ???? ???? ????