我想找到一种从Java代码(WADL或HTML)生成漂亮的REST API文档的方法 - 基于JAXB,JAX-RS注释和java doc注释(不需要doclet)。
这是我的项目环境
答案 0 :(得分:14)
尝试Enunciate。
Enunciate是一个显着增强Java Web服务API的引擎。 这很简单。您使用标准Java技术开发Web服务API,并将Enunciate附加到您的构建过程。突然间,您的Web服务API具有一些非常令人印象深刻的功能:
- 从JavaDocs中删除服务的完整HTML文档。
- 客户端库(例如Java,.NET,iPhone,Ruby,Flex,AJAX,GWT等),适用于希望与您的API进行交互的开发人员。
- 接口定义文档(例如WSDL,WADL,XML-Schema等)
- 等
答案 1 :(得分:10)
作为Enunciate
的替代方案,您可能还会考虑MireDot
。它源于我们在自己公司内部使用的工具,并且可以免费用于开源项目。它完全符合您的描述:它结合了jaxrs注释和现有的javadoc注释来生成rest api。它可以作为maven插件使用,您只需添加到项目中即可。 Jaxb注释在撰写本文时尚未得到支持,但该工具正在积极开发中,我们根据建议/请求/反馈选择要实现的功能。
答案 2 :(得分:1)
Java Compiler API允许您编写解析Java源代码并执行自己处理的代码。
这是instructional article,其中包含有关解析注释的信息。
我猜你可以使用这些API提取所需的原始信息。然而,这将产生语法事实 - REST URL和操作和参数,用户也将受益于服务作者可以(应该?)在Java Doc中提供的其他解释。
完整的解决方案可能是解析注释和java文档并将两者结合起来。