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>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值