扩展第三方Eclipse插件以在NewWizard完成时触发过程

时间:2018-07-09 08:58:04

标签: java eclipse eclipse-pde

我们正在寻求创建一个新的Eclipse插件,以在另一个商业第三方插件在Eclipse中创建新类时执行某些任务。

另一个插件是SAP的ABAP开发工具,不幸的是,它没有提供易于扩展的源代码(据我所知)。我对JS,Delphi,C#背景的Eclipse插件开发或Java不太熟悉,但是我有一个主要的想法,就是希望与之合作。我找不到有关它的任何文档,所以我不确定是否有可能。

基本上,SAP插件为不同类型的实体(类,接口,程序和程序包)创建了4个新向导,我们希望在其中任何一个完成时触发一个新过程。理想情况下,我希望侦听“ WizardComplete”事件并在参数正确的情况下运行,但我看不到任何此类事件的记录。

另一个明显的解决方案是“装饰”这些插件并包装一个新的“ PerformFinish”,但是我不确定使用商业代码执行此操作会带来的许可问题,我也不希望分发新的包装器每次SAP发布新版本时。

是否有明显的方法可以在向导完成后触发某个过程?可能还可以选择从IDE中检测到是否创建了新的“类”。

1 个答案:

答案 0 :(得分:1)

无法检测到向导的完成。

您可以使用IResourceChangeListener see here

监听资源(文件,文件夹,项目)的变化。
IWorkspace workspace = ResourcesPlugin.getWorkspace();

workspace.addResourceChangeListener(... your listener ...);

为侦听器提供了很多有关更改的详细信息,因此您应该可以看到类的创建。