好的,以便详细阐述我在评论中提供的链接。
我在做你所需要的两种方式绊倒(实际上并没有做到他们,但他们似乎为别人打工):
1)刷新Eclipse工作区使用ANT(Answer Link)
如前所述在链接,Eclipse提供,您可以使用各种用途的Ant任务,其中之一是<eclipse.refreshLocal />
标签:
<eclipse.refreshLocal resource="MyProject/MyFolder" depth="infinite"/>
- 资源是相对于工作空间
- 深度资源路径可以是下列之一:0,1或无限
此外,如果你得到一个构建失败错误,请确定你没有在Eclipse JRE之外运行ANT。要解决这个问题,打开外部工具对话框(运行>外部工具>打开外部工具对话框...),并确保JRE选项卡设置为“在与工作区相同的JRE中运行”。
2)刷新Eclipse工作区以编程方式使用IResource.refreshLocal() API(Answer Link)
正如联回答说,你可以在项目的根,一个特定的文件夹或单个文件做到这一点。
要刷新工作区中的所有项目,只需枚举所有使用ResourcesPlugin.getWorkspace().getRoot().getProjects()
API的项目并依次刷新。
下面是另一个示例(来自API网站),它使用FileOutputStream
设置文件的内容,然后使用refreshLocal
来同步工作区。
private void externalModify(IFile iFile) throws ... {
java.io.File file = iFile.getLocation().toFile();
FileOutputStream fOut = new FileOutputStream(file);
fOut.write("Written by FileOutputStream".getBytes());
iFile.refreshLocal(IResource.DEPTH_ZERO, null);
}
您生成的任何文件都存在于文件系统中,但在刷新(F5)之前不会显示在Eclipse中。 – 2014-12-04 22:10:17
无论如何在添加一些新文件后刷新programmaticaly? – Martin 2014-12-04 22:13:43
你可以编程你的手指推F5 XD – nLee 2014-12-04 22:19:14