Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在maven tools.jar依赖项上保留参数化路径_Java_Maven_Jar_Dependencies - Fatal编程技术网

Java 在maven tools.jar依赖项上保留参数化路径

Java 在maven tools.jar依赖项上保留参数化路径,java,maven,jar,dependencies,Java,Maven,Jar,Dependencies,我们为javadocs提供了一个定制的taglet,它需要tools.jar作为依赖项,但是maven在发布的pom.xml中硬编码jar位置 对于maven中的依赖关系,我们使用,但在构建项目后,tools.jar的路径将硬编码为它构建时使用的JDK: cat ~/.m2/repository/.../client.pom ... <dependency> <groupId>com.sun</groupId> <

我们为javadocs提供了一个定制的taglet,它需要
tools.jar
作为依赖项,但是maven在发布的pom.xml中硬编码jar位置

对于maven中的依赖关系,我们使用,但在构建项目后,tools.jar的路径将硬编码为它构建时使用的JDK:

cat ~/.m2/repository/.../client.pom
...
    <dependency>
        <groupId>com.sun</groupId>
        <artifactId>tools</artifactId>
        <version>1.4.2</version>
        <scope>system</scope>
        <systemPath>/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home/jre/../lib/tools.jar</systemPath>
    </dependency>
cat~/.m2/repository/../client.pom
...
com.sun
工具
1.4.2
系统
/Library/Java/JavaVirtualMachines/jdk1.7.079.jdk/Contents/Home/jre/。/lib/tools.jar
我曾经考虑过将作用域更改为
test
,但是我们不能使用
${java.home}
参数


有没有办法保留参数化的路径,重新配置pom/项目,使javadoc分开,或者让maven意识到在运行时不需要它?

maven直接使用
maven javadoc插件
支持自定义标记


有关更多信息,请参阅。它描述得如此清楚,重复这里的代码是没有意义的。这可以在
部分或
部分进行设置。在
部分中,您可能还需要将其自定义绑定到适当的构建阶段。

您不应该关心此路径。因为它是系统依赖项,所以它不是可传递的,依赖于您的项目的项目不会继承它。