我正在为我的项目生成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位于项目的构建路径上。
关于我在这里做错了什么想法?
答案 0 :(得分:0)
您已经指定了一个链接,但是您没有指定类路径 - 您需要告诉javadoc
任务在哪里找到包含这些类型的jar文件(或其他),就像您在建造。您几乎肯定会使用与javadoc
任务相同的javac
类路径。