在NBM更新

时间:2016-06-26 02:41:43

标签: java netbeans netbeans-platform

我试图在我的模块更新时设置一个小的更新后挂钩来清理一些临时文件,但到目前为止我还没有找到正确的方法来执行此操作。

我试图扩展并使用ModuleInstall类,但遗憾的是它似乎很生疏,其安装/卸载/更新的方法根本不起作用 - 它们实际上从来没有调用。 "恢复"方法确实有效,但它并不是我想要的,因为每次启动都会调用它。

我还尝试使用本手册定义安装后回调:http://wiki.netbeans.org/DevFaqNbmPostInstall,这可能是正确的方法,但我不能完全理解它。有限的java知识。

我创造了一个"主要"单个"更新程序"在main方法中完成我需要的类。我还从示例中复制了main.properties文件,并将mainClass更改为Updater。但是,这显然还不够,因为在安装NBM时仍未调用Updater。此外,当我在netbeans编辑器中打开我的NBM时,它不会识别我的主要"与示例项目一样的文件夹。

我不知道是否应该在relativeClassPath中指定一些东西,我也不知道如何测试我的安装后的类是否运行,抛出一些错误或其他什么。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

哇,我不能相信我自己弄明白了,但显然我做到了!

在我看来,也许netbeans没有正确创建NBM并且遗漏了我的主文件夹,因为它只是故障。我试图从示例项目中创建一个新的NBM并猜测它 - 它也没有工作。所以我的下一步是将我的NBM文件重命名为.zip,手动添加我的" main"将文件夹放入存档并将其重命名为.nbm。这样做了,我的Updater类现在被正确调用了,我还发现main.properties中的选项确实是可选的,除了mainClass。

希望这可以帮助将来的某个人。我刚刚提交了一份错误报告,可能会修复此错误:https://netbeans.org/bugzilla/show_bug.cgi?id=262580