Javadoc链接到其他API

时间:2014-05-22 09:12:58

标签: java ant javadoc

我正在为我的项目生成Javadoc,我想链接到我们使用的其他项目的API。我正在做以下事情:(我已尝试使用和不使用packagelistURL以及各种版本的API,即使我们使用的是3.1)

<target name="javadoc" depends="initLocal">
    <echo>Generating javadoc</echo>
    <javadoc packagenames="*" sourcepath="${srcdir}" destdir="${docdir}" access="public" verbose="false">
        <link offline="false" href="http://docs.oracle.com/javase/6/docs/api/" />
        <link offline="false" href="http://commons.apache.org/proper/commons-lang/javadocs/api-3.1/" packagelistURL="http://commons.apache.org/proper/commons-lang/javadocs/api-3.1/package-list"/>
    </javadoc>
</target>

我可以看到它已成功链接到Java SE6 API,但我似乎无法使用commons-lang API。当我运行构建时,我看到以下内容:

[javadoc] C:\path\to\my\project\myClass.java:6: package org.apache.commons.lang3.builder does not exist
[javadoc] import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
[javadoc]                                        ^
[javadoc] C:\path\to\my\project\myClass.java:7: package org.apache.commons.lang3.builder does not exist
[javadoc] import org.apache.commons.lang3.builder.ToStringStyle;

这似乎有点奇怪,因为API链接有效,我可以在API中看到这两个类。项目正确编译,并且commons-lang jar位于项目的构建路径上。

关于我在这里做错了什么想法?

1 个答案:

答案 0 :(得分:0)

您已经指定了一个链接,但是您没有指定类路径 - 您需要告诉javadoc任务在哪里找到包含这些类型的jar文件(或其他),就像您在建造。您几乎肯定会使用与javadoc任务相同的javac类路径。