我有一个Netbeans平台应用程序,它由6个模块组成。其中一个模块有一个启动登录mehcanism的类。此类是标准的Netbeans Installer类,称为Installer并扩展ModuleInstall。
我无法发布全班,但看起来像这样:
public class Installer extends ModuleInstall {
private static final String CHECK_DB = "Checking db connection at startup";
private LoginForm loginForm = new LoginForm();
private static Logger logger = LoggerFactory.getLogger(Installer.class);
public boolean closeApp = false;
@Override
public boolean closing() {
getDBPreferencesService().clearPassoword();
closeApp = true;
return closeApp;
}
@Override
public void restored() {
logger.info(CHECK_DB);
load();
}
private void load() {
//stuffs
}
}
我有restore()方法,它覆盖了ModuleInstall中的restored()。 模块的manifest.mf文件包含以下行:
OpenIDE-Module: org.app.station
OpenIDE-Module-Install: org/app/station/login/Installer.class
OpenIDE-Module-Localizing-Bundle: org/app/station/Bundle.properties
OpenIDE-Module-Requires: org.openide.windows.WindowManager
问题:如果我在启动画面后运行应用程序,则会出现主窗口。还没有调用restored()方法。
问题: 这背后可能是什么?如何获得调用方法?
答案 0 :(得分:1)
也许Geertjan的博客[1]可能会帮助你。
例如,他使用@OnStart
注释。
[1] https://blogs.oracle.com/geertjan/entry/simple_security_mechanism_for_the
答案 1 :(得分:0)
具有Installer / Activator的模块以及依赖于该类的所有其他模块必须在模块系统API上设置依赖关系。