来自一个C-guy的问题,他必须处理一些通过JNI连接到我的C代码的java代码。
我必须处理构建系统,我正在尝试将其从shell脚本更改为正确的makefile。对于容易的C部分,但java方面涉及xdoclet的东西。
我还没有找到xdoclet的全部内容,我想了解一切。
我做了我的Google研究,但我没有知道该做什么。对我来说,如果你已经熟悉这个问题并且你已经掌握了10年的java工作,那么你似乎只有机会了解官方文档。
请问 - 对于假人 - 解释xdoclet的作用是什么?
顺便说一下 - 我也提到了C.我也是面向对象编程的。没有必要向我解释类或继承的基础知识(如果需要理解xdoclet)。编辑:大约十年前我就问过这个问题。我仍然不知道xdoclet是什么,但这个问题超过了一千个观点。我希望看到一些java人可以加入,最后清理一下。
答案 0 :(得分:5)
XDoclet的10000英尺视图是它是一个代码生成引擎。 IMO,关于XDoclet的有趣之处在于 它做了什么,与 相反。
有一个名为javadoc的工具,它在源代码注释中获取注释并使用它生成html文档。最初设计用于生成javadoc的This is the classic example。为了支持不同的输出格式,javadoc的作者使其成为可插入的 - 您可以将“ doclets ”插入到javadoc引擎中。这允许他们利用相同的源代码解析器,并发出不同的文档输出。
XDoclet是一个聪明的黑客,它使用这个引擎来代码生成而不是文档生成。
使用的一个例子是:开发人员手动编写包含业务逻辑的类,向javadoc添加一些xdoclet注释,xdoclet生成提供事务完整性的其他代码。
修改强> 正如erickson所述,Java 5添加了对注释的支持,作为可由编译器直接处理的语言功能。因此,XDoclet以前提供的功能现在可以由JDK附带的Annotation Processing Tool(apt)直接执行。因为这个XDoclet现在通常被认为是过时的。