Maven解决Missing artifact com.sun:tools:jar:1.5.0错误 博客分类: mavenstruts2 mavenstruts2
程序员文章站
2024-03-16 14:51:52
...
关于这个错,其实网上有很多解决方案,这里记录主要是我被踩坑了,坑就在下面。
我在import maven项目时,pom.xml报错Missing artifact com.sun:tools:jar:1.5.0,经过盘查发现是pom引入的struts2相关jar包导致报错。
上网查询说是struts2-core.jar需要依赖Java运行时的tools.jar,解决方案就是将这个jar包手动引入。
解决方案一:
<dependency> <groupId>com.sun</groupId> <artifactId>tools</artifactId> <version>1.7</version> <scope>system</scope> <systemPath>${JAVA_HOME}\lib\tools.jar</systemPath> </dependency>
<version>是你本地jdk版本,必须指定。
如果还报错,就是你的<systemPath>jar包的路径不对,不放心就写绝对地址,比如我的是:C:\Program Files\java\jdk1.7.0_80\lib\tools.jar。
吐嘈下网上关于这个地址的写法有<systemPath>${JAVA_HOME}/../lib/tools.jar</systemPath>,还有<systemPath>${java.home}/../lib/tools.jar</systemPath>拿到我这来都不好使,我个就是我踩的坑,直接写绝对地址就好了。
解决方案二:
将tools.jar拷贝到你的的本地仓库并改名。路径为.m2\repository\com\sun\tools\1.5.0\tools-1.5.0.jar。
同时要新建tools-1.5.0.pom文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?> <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <modelVersion>4.0.0</modelVersion> <groupId>com.sun</groupId> <artifactId>tools</artifactId> <version>1.5.0</version> </project>
然后在pom.xml中按如下引入:
<dependency> <groupId>com.sun</groupId> <artifactId>tools</artifactId> <version>1.5.0</version> </dependency>
这种方式,你必须要新建.pom文件才能引入成功的,这个也是我踩的坑。
至于还其他网友说的在eclipse.ini中配置vm参数的,我试了不起作用。以上2种就够用了。