今天,更新了工程,报错了。
项目中用了HBase,也有Hadoop相关的jar配置。
pom文件, Missing artifact jdk.tools:jdk.tools:jar:1.7
Maven的Classpath说,E:\MavenRepository\jdk\tools\jdk.tools\1.7 没有tools.jar这个文件。
我去这个目录看了下,确实没有,某度了一下,网友说Maven中没有这个jar,我机智地从JDK的lib目录拷贝了一份过来,并且机智地把jar的名字改为jdk.tools-1.7.jar 二维简单的tools.jar。
放了之后,Update Maven Project,Classpath问题解决了,但是还是有刚刚的错误提示,导致了各种错误,项目启动就报错。
又某度了一下,参考其他网友的解决办法:
在pom.xml里增加如下配置
<dependency>
<groupId>jdk.tools</groupId> <artifactId>jdk.tools</artifactId> <version>1.7</version> <scope>system</scope> <systemPath>${JAVA_HOME}/lib/tools.jar</systemPath> </dependency>记得配置JAVA_HOME环境变量哦。
理论上来说,我们上面已经在本地Maven仓库配置了jdk.tools-1.7.jar," <scope>system</scope>
<systemPath>${JAVA_HOME}/lib/tools.jar</systemPath> "可以去掉。Maven引入jar有多种方式,既然本地仓库有了,理论上自己找得到。通过system方式也是可行的。
出于“严谨性”考虑,刚刚去掉了,没报错,ok。