6

当我运行时mvn javadoc:javadoc,我收到以下错误:

[错误] 构建错误
[信息] --------------------------------------------- -------------------------
[INFO] JavaDocs 报告生成发生错误:退出代码:1 -
javadoc:错误 - 无法读取选项(系统找不到指定的文件)

命令行是:“C:\Program Files\Java\jdk1.6.0_14\jre\..\bin\javadoc.exe”
 @options @packages

当我在我的系统上调用该命令"C:\Program Files\Java\jdk1.6.0_14\jre..\bin\javadoc.exe"时,它会运行 javadoc 可执行文件。

我在跑步:

  • JDK 1.6.0_14
  • Maven 2.0.8

我的 POM 的 javadoc 报告部分如下所示:

  <报告>
    <插件>
      <插件>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
      </插件>
      ...

以及相关的环境变量:

JAVA_HOME=C:\Program Files\Java\jdk1.6.0_14
M2_HOME=C:\Program Files\Apache 软件基金会\apache-maven-2.0.8
M2_REPO=C:\Documents and Settings\<user>\.m2\repository //<user> 是我的用户
MAVEN_OPTS=-XX:MaxPermSize=128m -Xmx512m

我尝试过重新安装 Java 和 Maven,以及使用 Maven 2.1.0、JDK 1.6.0_11,甚至 JDK 1.5.0_11。我将我的设置与一个环境几乎相同但没有问题的同事进行了比较。它曾经在大约一个月前工作,不,我不知道从那时起我的系统发生了什么变化。我第一次遇到它是在 JDK 1.6.0_11 中。这发生在我在我们的存储库中尝试过的每个项目上,我的同事对相同的项目没有任何问题。所以我很确定这只是我的环境,而不是项目本身。

我真的很感激对此的任何建议。

4

2 回答 2

7

我想通了,但首先我尝试了各种方法:

  • 卸载我系统上的所有 JDK 和 JRE,然后将 Java 重新安装到没有空格的路径
  • 删除我没有使用的每个环境变量,并清理我的 PATH
  • 将 Maven 和我的本地仓库重新定位到没有空格的目录
  • 重新启动(你永远不知道,这是 Windows)

今天我尝试运行一个没有正确执行的批处理文件,我很快意识到当我双击它时,它正在执行文件而不是在它所在的目录中。然后它就撞到了我。

几周前,我厌倦了我们的 IT 人员强迫我们的 cmd 窗口打开,H:所以我用谷歌搜索并使用这个页面来“修复它”。它似乎奏效了;几个星期以来我没有任何问题,而且我已经忘记了我的 cmd 窗口都曾经打开到某个H:驱动器。但是每个 cmd 窗口都打开到我指定的目录——无论是我运行“cmd”还是单击批处理文件,或者 Maven 打开了一个新的 cmd 窗口......

我猜当 Maven 运行时它会执行javadoc命令。所以 javadoc 部分正在工作,但由于工作目录错误,它找不到它写出的选项文件。

所以,现在我回来了,H:直到我弄明白为止。然后我会搞砸别的事情。但希望,如果没有别的,这会帮助别人......

于 2009-06-24T22:15:35.953 回答
0

我认为问题在于 javadoc 命令在没有任何参数的情况下运行。我在我的一个多模块项目中遇到了这个问题,它试图 javadoc 一个非 java 模块。(父 pom 正在请求 javadoc。)

有问题的模块是否需要制作 javadocs?我们终于搬到了 maven 2.1.0 并且我没有看到问题再次发生。

您的其他团队成员是否也在使用 maven 2.0.8?

于 2009-06-23T18:21:57.427 回答