2014-08-28 56 views
1

只要用户打开NetBeans IDE,我可以为在后台运行的NetBeans创建模块吗?例如,我正在构建一个插件,它捕获NetBeans中活动的JTextComponent(活动代码编辑器)的源代码,但我希望此插件始终在后台运行,而不必由用户单击按钮或按下来激活一些关键组合。在NetBeans中自动激活插件

这是可能的,如果是这样,那么做什么是最好的方法?

回答

1

是的,只需在你的模块的根包中创建一个“Install.java”,并用ModuleInstall类对它进行子类化,然后启动一个在restored()方法内连续运行的进程。在模块安装时调用restored()方法,并且每次启动netbeans。因此,只要模块在Netbeans中加载,您的过程就会开始。

ModuleInstall

而且从DevFaqModulesGeneral结帐本节。

编程注册 - ModuleInstall类的模块系统 允许你提供一个ModuleInstall类,它运行启动时或当该模块被装入期间的某个代码 ,并且当其被卸载或禁用可以运行清理代码 。这是最不理想的方式 要做的事情,因为在启动时运行代码意味着减慢 启动。在你使用这样的课程之前,请确保没有声明式的方法来做你想做的事情;见:

OpenIDE-Module-Install: org/netbeans/modules/paintcatcher/PaintCatcherModule.class

该线路应该是部分: DevFaqModulesDeclarativeVsProgrammatic

要对启动/安装/卸载/等一些代码运行,加 像下面这样你的模块的清单文件中的行清单 清单顶部的一组行之前,在它之前没有空行。它是指向模块内部类 文件的指针。类文件必须扩展类 org.openide.modules.ModuleInstall。 开发支持中有一位向导为您创建并注册这样的课程。