无法从位于 java 10 的控制台 运行 javadoc

Cannot run javadoc from console at java 10

我正在尝试使用以下代码 javadoc -sourcepath ./src/main java.packageName 直接从控制台获取我的 类 的 javadoc。那些 类 依赖于外部库(例如 junit.framework)。这段代码很容易从 IntelliJ IDEA 或通过 mvn clean install 编译,但是当我尝试创建 javadoc 时,我遇到了无法识别外部 类 和包的问题(例如 error: package junit.framework does not exist) . JDK 8 也出现同样的问题,但是这些警告和 javadoc 无论如何都会生成。

“此代码很容易从 intellij 编译”只需使用 intellij 的 JavaDoc 函数即可。它应该有效

工具 - 生成 JavaDoc

您可以采用两种方法从命令行构建 javadoc:

  • 将 maven-javadoc-plugin 添加到项目的 POM 文件中,以便您可以使用(例如)mvn javadoc:javadoc 生成 javadoc。有关详细信息,请参阅 plugin documentation

  • 运行 javadoc 直接使用 正确的 命令行参数。

我怀疑您当前的尝试失败有以下几个原因:

  • 您似乎正在为您的 src/test 树生成 javadoc。这可能是无意的。

    (如果上面的“错误:...”来自 src/main javadoc 生成,我很困惑为什么你的 src/main 源代码指的是 junit.framework包。它可以,但生产代码通常不会依赖于测试框架。)

  • 您需要使用 -classpath 选项来告诉 javadoc 在哪里可以找到外部库。