我们的javadocs有一个自定义标记,需要tools.jar
作为依赖项,但是maven硬编码了已发布的pom.xml中的jar位置。
对于maven中的依赖项,我们使用${java.home} parameter in our pom.xml,但是在构建项目之后,该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>
我考虑过将范围更改为test
但我们无法使用${java.home}
参数。
有没有办法保持参数化路径,重新配置pom / project以使javadocs是独立的,或者让maven意识到它在运行时不会需要它?
答案 0 :(得分:0)
Maven直接使用maven-javadoc-plugin
支持自定义标记。
有关详细信息,请参阅the official Maven documentation。它是如此清晰地描述,在这里重复代码是没有意义的。这可以在<report>
部分或<build>
部分进行设置。在<build>
部分中,您可能需要自定义将其绑定到相应的构建阶段。