使用 ant 仅为给定类(java 文件)的依赖类创建 javadoc

发布于 2024-10-12 15:17:44 字数 250 浏览 5 评论 0原文

我想使用 ant 从 java 源文件和该文件的依赖类创建 javadoc。这些位于 java 项目中,但我不需要所有 java 文件中的 javadoc。 有没有办法像 javac 一样创建 javadoc

javac includes="package/Java_source.java" destdir="dir/classes"

来编译源文件和依赖类?如果没有的话还有别的办法吗?

谢谢,塔马斯

I want to create javadoc with ant from a java source file and just from the dependent classes of this file. These are in a java project, but i don't need javadoc from all the java files.
Is there a way to create javadoc like javac

javac includes="package/Java_source.java" destdir="dir/classes"

that compiles the source files and just the dependent classes? If there isn't, then is there another way?

Thanks, Tamas

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

听风吹 2024-10-19 15:17:44

好吧,您可以添加文件集和/或包集参数:

带有文件集的示例:

<javadoc
    destdir="docs/api"
    author="true"
    version="true"
    use="true"
    windowtitle="Test API">

    <fileset dir="src">
      <include name="foo/bar/BaseClass.java"/>
      <include name="foo/bar/baz/DependentClassA.java"/>
      <include name="foo/bar/phleem/DependentClassB.java"/>
    </filset>

</javadoc>

但恐怕您必须自己找出依赖的类。

参考:


没有办法在不开始工作的情况下找出什么是“依赖类”。我唯一能想到的是一个残酷的黑客:

在编译的类上,使用字节码分析工具,例如 ASM 并检查代码库中的所有类对给定类的使用情况(源代码分析是不够的,因为可能存在通配符导入和同包使用)。从使用的类列表中,构建源文件列表,并将其传递给 Javadoc 任务(可能最好创建一个执行所有这些操作的 Ant 任务)。但这是很重的东西。

Well you can add a fileset and / or a packageset parameter:

Example with a fileset:

<javadoc
    destdir="docs/api"
    author="true"
    version="true"
    use="true"
    windowtitle="Test API">

    <fileset dir="src">
      <include name="foo/bar/BaseClass.java"/>
      <include name="foo/bar/baz/DependentClassA.java"/>
      <include name="foo/bar/phleem/DependentClassB.java"/>
    </filset>

</javadoc>

But you will have to figure out the dependent classes yourself, I'm afraid.

Reference:


There is no way to find out what the "dependent classes" are without starting the job. The only thing I can think of is a brutal hack:

On the compiled classes, use a byte code analysis tool like ASM and check all classes in the code base for their usage of your given class (source code analyis is not enough because of possible wildcard imports and same-package usage). From the List of used classes, build a list of source files, and pass that to the Javadoc task (probably best to create an Ant task that does all this). But this is heavy stuff.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文