sTg*_*sTg 5 java maven-2 pom.xml maven-3 maven
当我尝试为工具添加依赖性时,我得到一个奇怪的问题并在我的pom.xml中获得编译时异常.jar显示如下(Missing artifact com.sun:tools:jar:1.6.0)

我已将JAVA_HOME变量设置如下:
JAVA_HOME:C:\ Program Files\Java\jdk1.6.0_34
当我将它硬编码到JDK1.6的实际路径时,我没有发现任何错误,如下所示.
<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.6.0</version>
<scope>system</scope>
<systemPath>C:\Program Files\Java\jdk1.6.0_34\lib\tools.jar</systemPath>
</dependency>
Run Code Online (Sandbox Code Playgroud)
但我知道这不是好习惯.请求解决此错误的指导.
cod*_*lus 13
java.home 是一个System属性,通常指向jre目录,当你指向一个不存在的jar时,你会收到一个错误.
如果要在pom文件中引用环境变量,请使用以下语法.
${env.variable_name}
Run Code Online (Sandbox Code Playgroud)
在您的情况下,它应${env.JAVA_HOME}如下所示
<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.6.0</version>
<scope>system</scope>
<systemPath>${env.JAVA_HOME}/lib/tools.jar</systemPath>
</dependency>
Run Code Online (Sandbox Code Playgroud)
更新:正如词典提到的,这不适用于MAC,因为MAC JDK具有不同的文件结构.
| 归档时间: |
|
| 查看次数: |
35313 次 |
| 最近记录: |