一个简单java预处理工具
时下, 支持java的preprocessing的工具有不少, 这里只讲述一个极轻量级的预处理工具,但对个人而言,目前它已经足够好用..
来源:
看过它的页面 就知道这也是某人的即兴之作, 仅有12K, 连代码都没有直接提交到google code上面去, 也没有完整的用法说明..不过,好在它的使用极其简明,熟悉任何其他预处理工具的人都应该一看就明白..
用法
对需要预处理的文件进行处理.
对应于不同的文本类型,以下关键字有不同的体现(对于java/jsp/css/sql/xml等, 需要把它们放在Commet中, java使用//, ),但其用法是相同的.
#define/#undef/#ifdef/#else/#endif/#ifndef
在需要进行预处理的文件中, 使用#ifdef/ifndef之类的块将代码分割.
定义开关状态
在源文件中使用#define/#undef或是在ant当中定义名称为对应的开关项的属性. (不过这里不支持将开关项定义成为不同的值而有不同的含义,即,定义
和
是一样的效果..另外,注意开关项是不区分大小写的, 可以定义多个值, 后来者直接居上占优. 但是预处理是逐行进行, 所以在处理某一块代码是的开关状态是以处理到当前行时的开关状态为准。
在ant build文件中定义 task
在build.xml中加入即可.
task的使用
预处理task派生自copy task, 所以支持Copy task的全部属性(如filter, mapper, ...), 视当前project的全部属性为已经定义的开关,对任务中定义的file进行预处理.
阅读(643) | 评论(0) | 转发(0) |