我在eclipse (3.4)中设置了一个外部工具(sablecc),用于在当前项目中生成一系列类。我需要运行这个工具并相当频繁地重新生成这些类。这意味着每次我想运行sablecc时,我必须手动删除sablecc创建的包/类,以确保在新旧生成的类之间不会发生冲突。有没有什么简单的方法可以在eclipse或其他地方实现自动化?
发布于 2008-09-16 19:54:16
不确定我是否正确理解了你的观点,我想你需要在运行sablecc之前删除旧的类,因为其中一些类最终不会在新的运行中创建。
最好使用目标编写简短的Ant build.xml,它首先删除类(Ant delete任务),然后运行sablecc (Ant exec任务)。也可以预先设置eclipse,以便在Ant完成后刷新工作区。
将Ant anywhere放到项目中,右键单击,运行为/ build.xml Build。
为了保持整洁的风格,您可以使用其Ant任务(由org.sablecc.ant.taskdef实现)来调用sablecc,而不是在新进程中外部运行它。
发布于 2008-09-16 18:29:09
您可以告诉Eclipse在运行外部工具后刷新工作区(或其中的一部分)。这将强制Eclipse检测任何新的/删除的类。
发布于 2008-09-16 19:53:48
JesperE指的是运行sablecc的外部工具配置中的选项刷新->完成时刷新资源。
https://stackoverflow.com/questions/75411
复制相似问题