我在 windows 环境下使用 maven 编译我的项目。虽然我刚刚创建了项目并添加了各种库的依赖项。
当我添加它们时,maven 开始抱怨缺少tools.jar
,所以我在下面添加了pom.xml
:
<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.6</version>
<scope>system</scope>
<systemPath>${java.home}/../lib/tools.jar</systemPath>
</dependency>
当我运行 maven 安装时,我收到了缺少 jar 的错误,如下所示:
[ERROR] Failed to execute goal on project GApp: Could not resolve dependencies for project GApp:GApp:war:0.0.1-SNAPSHOT: Could not find artifact com.sun:tools:jar:1.6 at specified path C:\Program Files\Java\jre6\lib\tools.jar -> [Help 1]
问题是tools.jar
在“ C:\Program Files\Java\jdk1.6.0_26\lib
”中并且在环境变量中正确设置JAVA_HOME
但maven仍在jre文件夹中查找错误消息“ C:\Program Files\Java\jre6\lib\tools.jar
”。
C:\>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.6.0_26
有趣的是:当我设置依赖的完整路径时,它工作得很好。但我不想硬编码。
<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.6</version>
<scope>system</scope>
<systemPath>C:\Program Files\Java\jdk1.6.0_26\lib\tools.jar</systemPath>
</dependency>
有人可以为此提出任何动态解决方案吗?