maven - 如何从Maven站点中的Test JavaDoc链接源类JavaDoc?

标签 maven javadoc maven-site-plugin maven-javadoc-plugin

配置了 maven-site-plugin 和 maven-javadoc-plugin(使用 doclava doclet)后,我试图在由 mvn site 生成的站点上获取正确的 JavaDocs .在我的代码中,我有几个 JUnit 测试类(位于 src/test/java/my/package/*.java 中),其中 JavaDoc 注释链接源类(位于 src/main/java/my/package/*.java 中) .问题是在生成 Test JavaDocs 时,javadoc 找不到源类文档所在的位置。我试图通过使用 links 告诉 javadoc 在哪里可以找到它和 offlineLinks maven-javadoc-plugin ( documented here ) 的配置选项,但没有运气。我希望 javadoc 生成相关链接,以便它们在离线查看生成的文档时可用(在浏览器中从/path/to/project/target/site/index.html 浏览)。我不想disable Test JavaDocs generation

My pom.xml | An excerpt from mvn site output

另外,我是 Java 和 Maven 新手

为了澄清这个问题,这里有一个例子。我有一个测试类GenerateATest驻留在 src/test/java/name/earshinov/PrefixCircuits/GenerateATest.java (对不起,评论是俄语):

package name.earshinov.PrefixCircuits;
// imports skipped

/**
 * Тестирование алгоритма построения вспомогательных подсетей типа A,
 * реализованного в классе {@link name.earshinov.util.PrefixCircuitGenerator},
 * по отдельным случаям, описанным в оригинальной статье
 */
public class GenerateATest {
// ...

链接类 PrefixCircuitGenerator在 src/main/java/name/earshinov/PrefixCircuits/PrefixCircuitGenerator.java 中。我跑后mvn site ,我在 target/site/apidocs/index.html 得到源类的 JavaDocs,在 target/site/testapidocs/index.html 得到测试 JavaDocs。在 GenerateATest测试 JavaDocs 中的文档我想查看指向 PrefixCircuitGenerator 文档的链接在源类 JavaDocs 中。但是,javadoc 找不到 PrefixCircuitGenerator我引用了,所以不生成链接,在mvn site中可以看到相应的警告输出:
[WARNING] /home/eugene/dev/java/PrefixCircuits-maven/src/test/java/name/earshinov/PrefixCircuits/GenerateATest.java:9: warning 101: Unresolved link/see tag "name.earshinov.util.PrefixCircuitGenerator" in name.earshinov.PrefixCircuits.GenerateATest

我的目标是(以某种方式)告诉 javadoc 如何生成链接。换 {@link name.earshinov.PrefixCircuits.PrefixCircuitGenerator}{@link PrefixCircuitGenerator}不会改变任何东西。

最佳答案

刚好有时间做实验。似乎 doclava doclet 只是不支持外部文档链接(不实现 -link 命令行选项)。我通过从 CLI 运行 javadoc 发现了它。可能 javadoc 插件知道 -link选项特定于标准 doclet,因此如果使用替代 doclet,它不会费心从 pom.xml 获取此选项的值并通过命令行参数将其传递给 javadoc。因此不会产生错误。

关于maven - 如何从Maven站点中的Test JavaDoc链接源类JavaDoc?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7304132/

相关文章:

java - 如何将 javadoc 添加到 Java 中的静态初始值设定项?

java - 使用 Maven 站点插件时出错(AbstractMethodError)

java - Jenkins 构建失败且没有错误消息

java - Spring MVC : Testing with selenium failing with commons-io not found(it exists)

maven v3.0.5 找不到sqoop神器

java - 如何使 Maven 构建(目标站点)因 Javadoc 警告而失败?

maven-3 - 从多个模块中的多个 POM 进行 Maven 站点暂存

maven - 如何禁用 maven 阻止外部 HTTP 存储库?

documentation - Doxygen Javadoc样式的标记描述跨越多行

java - 为什么 inheritedDoc 没有在构造函数上定义?