Tag Archives: xdoclet

Xdoclet2(二):与Xdoclet1.X比较

Xdoclet2无论在配置、开发、及性能都比Xdoclet1.X有大大的提升。 关于两代Xdoclet的内部结构可以用Xdoclet2官方网站的两幅图片来容易看出: Xdoclet1.x: 这一代,以Xdoclet1.x引擎为核心,由XjavaDoc提供源数据,使用XDT模板来实现文件的生成。而使用方式只有AntTask一种。 Xdoclet2: 这一代,Xdoclet2的核心只有很少的一点点代码,它使用现有的框架来获得源数据,再结合现流行的模板框架来实现文件的生成。核心向外界提供接口,用户可以根据自已的需要去实现模板引擎或者源数据的提供。 在源数据提供方面,使用了QDox,模板方面都是使用Apache的成熟框架,Jelly及Velocity,使用模板框架的好处是不需要开发者再去学习一种模板语言。最后,Xdoclet2的使用方法有多种,而不局限于AntTask。 开发者将会看到更多的不一样。在Xdoclet2中,开发一个自定义的标签是相对容易很多,开发者可以把大部分的工夫放在制订标签的标准上,然后使用接口表现出来。嘿。注意这里说的接口。Xdoclet2让我们以接口的方式来定义一个标签。而具体的实现,让她的一个内置任务帮你搞定。最后你只需要轻轻松松写个Plugin及模板就完成了。 刚才讲到了用“接口”来表现一个标签,包括其属性等相关信息,在Xdoclet1.X看来,是不可能的。而在2代时,开发者在写自定义标签的是候是使用一种已定义的Tag:qtags。使用Qtags来告诉Xdoclet2,接口的方法名里所说的属性(方法名通常是Get或Is方法)是否必需、取值范围等等。Qtags会把你的意图实现。将会为你生成接口的实现类。而在1.X的时候,我们通常要自已定义而且实现。2代的一个闪光点就是使用Qtags大大简化了Tag标准的制订。 下次,我将用个简单的例子来示范如何编写一个自定义Tag并投入到使用中的。 Xdoclet2的官方网站

Posted in 技术 | Tagged , | 1 Comment

Xdoclet2(一):找回Doclipse缺失的标签提示--Qtags

使用Xdoclet2的Eclipse插件Doclipse,发现里面仅提供了Plugin的Tag的提示。而如果要自已写Plugin的时候就发现这个插件没有提供最原始的Tag的提示,即Qtags。参考了Doclipse的文档之后想自已动手写一个XML文件来提供提示功能。(Doclipse插件除了提供默认的Plugin 配文件,还可以从用户指定的一个文件查找符合格式的Plugin配置文件)。后来发现Xdoclet2的源码中的Plugin里居然有Qtags的Plugin,这样一来,代码比较搞笑,在Qtags的源码里面使用Qtags的标签生成Qtags标签提示文件。而我再次去Doclipse的包里找的时候,却没发现有Qtags的配置,郁闷。于是只有自已配Ant脚本,手动生成Qtags的配置文件。 <?xml version=”1.0″ encoding=”ISO-8859-1″?> <doclipse> <description>@ tags</description> <tag target=”class” doc=”” name=”@command.class”> <attribute required=”true” doc=”” name=”name”/> <attribute required=”false” doc=”” name=”generate”/> </tag> <tag target=”” doc=”class level tag to specify deprecated aliases of current tag. those will be bombed on creation” name=”@qtags.alias”/> … Continue reading

Posted in 技术 | Tagged , | Leave a comment