`
JasonRight
  • 浏览: 72919 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Fmpp+Ant生成类文件

    博客分类:
  • Java
阅读更多

需求是根据模板类生成一些类。

看了一篇帖子Ant+Freemarker+xml 生成Html , 生成的文件名只能和模板类同名。查了freemarker的文档,没有发现支持这个功能。 FMPP 能够完成这个任务。

 

Download fmpp_0.9.14.tar.gz

 

目录结构

 

数据源books.xml

<?xml version="1.0" encoding="UTF-8"?>
<classes>
	<packagename>org.myym.books</packagename>
	<class>
		<name>ScienceFiction</name>
	</class>
	<class>
		<name>Novel</name>
	</class>
	<pluginpackagename>org.myym.books.editor</pluginpackagename>
</classes>

 

模板

<@pp.dropOutputFile />
<#list model.classes.class as class>
<@pp.changeOutputFile name="${class.name}Editor.java" />
package ${model.classes.pluginpackagename};

import ${model.classes.pluginpackagename}.Type
public class ${class.name}Editor{

    protected String getEditorTitle() {
        return "${class.name} Editor";
    }
    
    protected Type getType(){
    	return Type.${class.name?upper_case};
    }
    
}

</#list>

模板文件的后缀名是任意的。这里命名成ftl是因为安装了'FreeMarker IDE' plug-in.可以高亮代码

 

<@pp.changeOutputFile name="${class.name}Editor.java" />

name可以指定文件夹

A.name="src/${class.name}Editor.java" 在模板文件路径下生成src的文件夹
并在src文件夹下生成.java文件

B.name="/src/${class.name}Editor.java' 则在destdir目录下生成src文件夹
	<fmpp srcdir="templates"
    		destdir="gen-out"
        	logfile="log.fmpp"
        	data="model:xml(../model/books.xml)"/>
 

 

build.xml

<project name="Fmpp-Ant" default="generate">
	<taskdef name="fmpp" classname="fmpp.tools.AntTask">
		<classpath>
			<fileset dir="lib">
				<include name="*.jar" />
			</fileset>
		</classpath>

	</taskdef>

	<target name="generate">
		<fmpp srcdir="templates"
    		destdir="gen-out"
        	logfile="log.fmpp"
        	data="model:xml(../model/books.xml)"/><!--relative path to 'srcdir'-->
	</target>
	
	<target name="clean" description="Deletes the output">
		<delete includeemptydirs="true"  verbose="true">
			<fileset dir="." includes="gen-out/"/>
		</delete>
	</target>
</project>

 

运行ant-task 'generate'后,刷新Project, 会生成一个文件夹'gen-out'

分享到:
评论

相关推荐

    Jmeter+ant自动生成测试报告的模板

    Jmeter+ant自动生成测试报告的模板,测试报告中增加TPS(Throughput)和90% Line等指标;

    jmeter+ant 持续集成build.xml文件

    jmeter+ant 持续集成build.xml文件,直接使用ant命令执行jmeter脚本文件,得到图形测试报告

    Jenkins+Jmeter+ant接口自动化框架.docx

    然后,我们需要将 Jmeter 目录下的 extras 目录下的 ant-jmeter-1.1.1.jar 文件复制到 Ant 目录下的 lib 文件夹中。 接下来,我们需要新建一个 build.xml 文件,并将其放入 Jmeter 目录下的 report 文件夹中。这个...

    Vue3+Vite+Ant Design 后台管理系统模板.zip

    Vue3+Vite+Ant Design 后台管理系统模板是一个现代且高效的前端开发框架组合,用于构建功能丰富的Web应用。这个模板结合了Vue.js的最新版本3、Vite构建工具以及Ant Design Vue UI库,旨在提供一个快速开发后台管理...

    jenkins+ant+jmeter生成html资源

    在“build.xml”文件中,会包含编译、打包、测试等步骤的指令,其中包括了如何使用JMeter的结果XML文件生成HTML报告的配置。 Jenkins则是一个持续集成服务器,它可以自动化各种任务,包括构建、测试和部署软件。在...

    基于Reactjs+Ant Design+Servlet宾馆管理系统.zip

    基于Reactjs+Ant Design+Servlet宾馆管理系统 基于Reactjs+Ant Design+Servlet宾馆管理系统 基于Reactjs+Ant Design+Servlet宾馆管理系统 基于Reactjs+Ant Design+Servlet宾馆管理系统 基于Reactjs+Ant Design+...

    使用vue3+ant-design-vue+vite+ts开发的通用中后台框架,实现了权限系统.zip

    Vue 3.2 -- 使用vue3+ant-design-vue+vite+ts开发的通用中后台框架,实现了权限系统、动态菜单、国际化、mock数据、表格集成快速使用等功能,简洁干净开箱即用。. 各领域数据集,工具源码,适合毕业设计、课程设计...

    JUnit+Ant 生成测试报告

    具体到这个名为"junittest"的压缩包文件,很可能包含了Ant的build.xml配置文件,以及JUnit测试相关的类文件。解压后,可以查看build.xml文件了解Ant如何配置执行JUnit测试和生成报告的步骤。同时,可能会有JUnit测试...

    jenkins+ant+jmeter自动化接口测试框架搭建

    总结来说,搭建Jenkins+Ant+JMeter自动化接口测试框架涉及到软件工具的安装配置、环境变量的设置、测试脚本的编写和执行、以及自动构建和测试流程的管理。这个过程不仅需要掌握各个工具的使用方法,还需要有一定的...

    jmeter+ant所需要的build.xml文件

    第一次做jmeter+ant自动化接口测试,需要build文件,开始直接copy博客中的内容,格式不对,调试好久不成功;后发现在jmeter/extras文件夹中有一个build文件,copy出来根据需要修改下,成功了,特上传自选供大家使用...

    使用vue3+ant-design-vue+vite+ts开发的通用后台框架.zip

    使用vue3+ant-design-vue+vite+ts开发的通用后台框架,实现了权限系统、动态菜单、表格集成快速使用等功能,简洁干净开箱即用。 Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。 ...

    ant +jmeter 生成测试报告.docx

    《Ant + JMeter 生成测试报告的详细指南》 在软件测试领域,性能测试是评估系统稳定性和效率的重要环节,Apache JMeter 是一款广泛应用的开源性能测试工具。然而,JMeter 的默认报告可能无法满足所有需求,这时我们...

    贯通Java Web开发三剑客:Eclipse+Tomcat+Ant整合开发.part2.rar

    《贯通Java Web开发三剑客:Eclipse+Tomcat+Ant整合开发》.part2.rar

    接口自动化测试方案jmeter+ant+jenkins.

    接口自动化测试方案jmeter+ant+jenkins 本文描述了一个基于jmeter、ant和jenkins的接口自动化测试方案,该方案旨在解决手工测试的低效率和不准确性问题。通过搭建自动化测试框架,测试人员可以快速、准确地测试接口...

    基于 vue3 + ant-design-vue 的中后台管理系统.zip

    2. **主题定制**:可以通过修改配置文件或使用 CSS 变量来自定义 Ant Design Vue 的主题,以符合企业的品牌风格。 3. **国际化支持**:Ant Design Vue 支持多语言切换,方便构建面向全球用户的项目。 4. **Form ...

    JMeter+ant测试报告优化

    JMeter+ant测试报告优化

    基于vite2.x + vue3.x + ant-design-vue3.x + typescript基础后台管理系统模板

    【标题】:“基于vite2.x + vue3.x + ant-design-vue3.x + typescript基础后台管理系统模板” 【描述】:这个项目是一个现代的、高效的基础后台管理系统模板,它结合了最新的前端技术栈,包括vite2.x作为构建工具,...

    Vue2版前端源码,基于 Vue2+AntDesignVue 实现的 Ant Design Pro提供强大代码生成器的低代码平台

    JeecgBoot—Vue2版前端源码,基于 Vue2+AntDesignVue 实现的 Ant Design Pro,提供强大代码生成器的低代码平台。 前端页面代码和后端功能代码一键生成,不需要写任何代码,保持jeecg一贯的强大

Global site tag (gtag.js) - Google Analytics