我试图在我的.pom中包含C:/Java/jdk1.7.0_71/lib/tools.jar作为依赖项。环境是Eclipse Luna SR2,Windows 10和JAVA_HOME被定义为" C:/Java/jdk1.7.0_71"。
如何确定此tools.jar文件的版本""? Eclipse Maven编辑器显示了定义依赖项的错误,因为"缺少工件com.sun:tools:jar:1.7"。
依赖关系和配置文件定义为:
<dependencies>
<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.7</version>
<scope>system</scope>
<systemPath>${tools.jar}</systemPath>
</dependency>
</dependencies>
<profiles>
<profile>
<id>standard-jdk</id>
<activation>
<activeByDefault>false</activeByDefault>
<file>
<exists>${java.home}/../lib/tools.jar</exists>
</file>
</activation>
<properties>
<tools-jar>${java.home}/../lib/tools.jar</tools-jar>
</properties>
</profile>
</profiles>
mvn help:active-profiles显示此配置文件standard-sdk处于活动状态,因为$ {java.home} /../ lib / tools.jar解析为C:/Java/jdk1.7.0_71/lib /tools.jar,文件确实存在。
我运行了mvn install,在本地文件系统中找到了%userprofile%。m2 / repository / com / sun / tools / with 2个文件,tools-1.7.pom.lastUpdated和tools-1.7.jar.lastUpdated。编译似乎按预期工作,构建运行成功完成。
我尝试过从1.7到1.4的各种版本号,甚至尝试过tools.jar MANIFEST.MF中显示的版本,但没有解决丢失的工件问题。