删除某些在Eclipse中运行外部工具的类?

时间:2020-03-05 18:56:46  来源:igfitidea点击:

我在eclipse(3.4)中设置了一个外部工具(sablecc),该工具会在当前项目中生成一堆类。我需要运行此工具并相当频繁地重新生成这些类。这意味着每次我想运行sablecc时,都必须手动删除sablecc创建的包/类,以确保在新旧类之间不存在冲突。是否有一些简单的方法可以从Eclipse或者其他方式自动执行此操作?

解决方案

回答

我们可以告诉Eclipse在运行外部工具后刷新工作空间(或者其一部分)。这将强制Eclipse检测任何新的/已删除的类。

回答

JesperE在运行sablecc的外部工具配置中引用了"刷新"->"完成时刷新资源"选项。

回答

不知道我是否理解正确,我想我们需要在运行sablecc之前删除旧类,因为其中一些最终不会在新运行中创建。

最好与目标一起编写简短的Ant build.xml,该目标首先删除类(Ant删除任务),然后运行sablecc(Ant exec任务)。还可以预设Eclipse,以便在Ant完成后刷新工作区。

将build.xml放置到项目的任何位置,右键单击"运行方式/蚂蚁构建"。

仅仅为了简洁的样式,我们可以使用其Ant任务(由org.sablecc.ant.taskdef实现)调用sablecc,而不用在新进程中外部运行它。