如何解决maven引用jdk中的tools.jar报missing artifact的问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何解决maven引用jdk中的tools.jar报missing artifact的问题相关的知识,希望对你有一定的参考价值。
参考技术A 如在eclipse+maven编写mapreduce代码,就会报Missing artifact jdk.toos:jdk.toos:jar:1.6只需要在项目的pom.xml 文件中加入以下配置,指定maven去本地寻找 tools.jar、
<dependency>
<groupId>jdk.tools</groupId>
<artifactId>jdk.tools</artifactId>
<version>1.6</version>
<scope>system</scope>
<systemPath>$JAVA_HOME/lib/tools.jar</systemPath>
</dependency>
解决:eclipse或STS运行maven工程出现Missing artifact jdk.tools:jdk.tools:jar:1.7问题
eclipse或STS运行maven工程出现Missing artifact jdk.tools:jdk.tools:jar:1.7问题
最近项目中使用到大数据平台,代码中应用了hbase-client.0.98.6-hadoop2.jar包,该包中引用了jdk.tools.1.7,所以导致eclipse中pom.xml老是提示Missing artifact jdk.tools:jdk.tools:jar:1.7。从网上找了一下原因大多都说是工程maven找不到系统内的jdk1.7,根本原因是没有指定javaw.exe的的位置导致的,具体解决方法有三种,这里我偏向第一种,因为第二和第三种都改改动pom.xml文件,这样并不好,因为我们再开发中工程代码有多个人共同开发,你改动pom文件可能会影响别人,所以pom尽量有一个人管理,尽量少带动别人的代码。
注意 在使用下面三种方法之前先检查一下eclipse或STS中的JDK路径配置是否正确:
首先,通过正常运行eclipse或STS,打开window-->preferences-->java-->installed jres 页面的窗口
一定要确保这个JDK路径是你本机的JDK路径,而不是你本机外的JRE路径,因为本人再装jdk的时候,同时装了一个jre,我打开STS 的时候默认jdk是我的jre路径,而非我的jdk路径
如果上面的检查配置还是不行,则采用下面是三种解决方法解决。
方法一:修改eclipse或STS启动配置
找到eclipse或STS的安装路径,在安装路径下找到eclipse.ini或STS.ini,将其文件打开,在文件中找到“-vmargs”,在“-vmargs”之前添加下面代码
-vm
D:\\tools\\java\\jdk1.7\\jre\\bin\\server\\jvm.dll
其中 D:\\tools\\java\\jdk1.7 替换成自己的JAVA_HOME路径记录。如图:
修改之后重启eclipse或STS即可
方法二:直接在pom.xml中加上一个依赖项目
在pom文件中添加下面配置
<dependency> <groupId>jdk.tools</groupId> <artifactId>jdk.tools</artifactId> <version>1.7</version> <scope>system</scope> <systemPath>${JAVA_HOME}/lib/tools.jar</systemPath> </dependency>
方法三:在pom文件的plugins中指定jdk
在maven工程的pom文件中添加如下配置
<plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.7</source> <target>1.7</target> </configuration> </plugin> </plugins>
以上是关于如何解决maven引用jdk中的tools.jar报missing artifact的问题的主要内容,如果未能解决你的问题,请参考以下文章
maven解决Missing artifact jdk.tools:jdk.tools:jar:1.6
maven工程pom.xml报jdk.tools.jar找不到问题
Maven引入Hadoop依赖报错:Missing artifact jdk.tools:jdk.tools:jar:1.6
eclipse的maven项目报Missing artifact jdk.toos:jdk.toos:jar:1.6错
Maven报错Missing artifact jdk.tools:jdk.tools:jar:1.7
myeclipse导入一个maven项目pom报“Missing artifact com.alibaba:tools:jar:1.6.0”怎么解决