使用 ant 仅为给定类(java 文件)的依赖类创建 javadoc
我想使用 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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好吧,您可以添加文件集和/或包集参数:
带有文件集的示例:
但恐怕您必须自己找出依赖的类。
参考:
没有办法在不开始工作的情况下找出什么是“依赖类”。我唯一能想到的是一个残酷的黑客:
在编译的类上,使用字节码分析工具,例如 ASM 并检查代码库中的所有类对给定类的使用情况(源代码分析是不够的,因为可能存在通配符导入和同包使用)。从使用的类列表中,构建源文件列表,并将其传递给 Javadoc 任务(可能最好创建一个执行所有这些操作的 Ant 任务)。但这是很重的东西。
Well you can add a fileset and / or a packageset parameter:
Example with a fileset:
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.