【发布时间】:2014-08-07 00:35:56
【问题描述】:
我正在开发一个在 Eclipse 工作台中运行的 Ant 任务。
Ant 任务需要完成一个简单的任务:关闭和重新打开一个项目。
但是,下面的代码:
IProject project = ...;
project.close(null);
project.open(null);
似乎与关闭一个项目并使用 UI重新打开它的结果并不完全相同。
在我看来,“打开项目”的UI操作不仅仅是调用project.open();类似于调用“响应”项目的open() 调用的插件。
有没有一种方便的方法来模仿 Eclipse 打开项目的 UI 功能?我认为这段代码必须封装在某个地方,但是通过 Eclipse 的大量源代码似乎并没有发现太多。
编辑背景:
我实际上正在使用 Rational Application Developer (v9)。我正在使用projectSetImport Ant 任务将现有项目从文件系统导入工作台。这些项目是 Git 存储库的一部分。我注意到,一旦将项目导入工作区,EGit 功能在这些项目上不可用,除非我关闭项目并重新打开它们(通过 UI)。
【问题讨论】:
-
模仿Eclipse的UI功能是什么意思? project.open() 触发感兴趣的听众响应的 ResourceChangeEvents。如果您还希望打开引用的项目,请查看 org.eclipse.ui.actions.OpenResourceAction
-
为什么要先关闭再打开?可能有更好的方法来做你想要实现的任何事情。
-
@greg-449 我相应地更新了我的问题。希望清楚...
标签: eclipse eclipse-pde