我无法让javadoc引用另一个项目的API。
项目之间存在严格的雇佣关系(“app”项目引用的“常见”项目)。 这两个项目都很好,所以没有实际存在的类和包没有问题。
我的理解是javadoc没有像Java那样的构建路径,而是使用指向其他javadoc网站的链接。在能够生成HTML交叉引用方面,有一些非常合理的原因。
我试图做到这一点如下:
Javadoc仍会发出以下形式的错误消息:
[javadoc] C:\Users\couling\workspace\app\src\com\blahblah\app\AppMain.java:14: package com.blahblah.common.foo does not exist
[javadoc] import com.blahblah.common.foo.Bar
[javadoc] ^
生成的javadoc项目之间没有交叉链接。
这两个项目的蚂蚁任务如下:
普通的:
<javadoc
access="protected"
author="true"
classpath="."
destdir="out/doc/docs"
nodeprecated="false"
nodeprecatedlist="false"
noindex="false"
nonavbar="false"
notree="false"
packagenames="*"
source="1.6"
sourcepath="src"
splitindex="true"
use="true"
version="true">
<link href="http://download.oracle.com/javase/6/docs/api/" />
</javadoc>
应用:
<javadoc
access="protected"
author="true"
classpath="."
destdir="out/doc/docs"
nodeprecated="false"
nodeprecatedlist="false"
noindex="false"
nonavbar="false"
notree="false"
packagenames="com.blahblah.app.*"
source="1.6"
sourcepath="src"
splitindex="true"
use="true"
version="true">
<link href="http://intranet.blahblah.com/api/common/docs/" />
<link href="http://download.oracle.com/javase/6/docs/api/" />
</javadoc>
对于我需要做什么才能让应用程序引用常见的任何想法?
答案 0 :(得分:1)
<link>
元素(或命令行javadoc的-link
选项)仅有助于生成链接 - 但Javadoc在较早的时候停止,它无法与您的应用程序一起使用如果他们引用未知(常见)类,则为类。
在这方面,Javadoc就像Javac一样工作 - 你必须以某种方式将它指向要使用的类,即它们必须在类路径中。您可以使用<classpath>
元素指向jar文件或类目录,或<sourcepath>
元素指向源(如果您需要从它们继承一些注释,请执行此操作)。
链接到标准API不需要这样做,因为它已经包含在编译器中。
请注意,以这种方式链接需要Javadoc从此URL下载package-list
- 您可以改为指向包含此包列表文件的本地目录。