2016-06-26 8 views
0

私のモジュールが更新されたときに一時的なファイルをクリーンアップするための小さなポストアップデートフックを設定しようとしていますが、これまで正しい方法を見つけられませんでした。これを行う。NBMアップデートでカスタムポストインストールコードを実行する

ModuleInstallクラスを拡張して使用しようとしましたが、残念ながらそれはかなり錆びていて、インストール/アンインストール/アップデートされたメソッドはまったく動作しません。 "復元された"メソッドは機能しますが、起動するたびに呼び出されるので、私が望むものではありません。

また、このマニュアルを使用してインストール後のコールバックを定義しようとしました:http://wiki.netbeans.org/DevFaqNbmPostInstallこれは正しい方法かもしれませんが、確かに制限されたJava知識で私の頭を包み込むことはできません。

私は、メインメソッドで必要なものを実行する1つの "Updater"クラスを持つ "main"フォルダを作成しました。また、例のmain.propertiesファイルをコピーし、mainClassをUpdaterに変更しました。しかし、NBMをインストールするときにUpdaterがまだ呼び出されていないため、これでは不十分です。また、NBMをnetbeansエディタで開くと、サンプルプロジェクトのように "main"フォルダが認識されません。

relativeClassPathで何かを指定する必要があるのか​​どうかは分かりませんし、インストール後のクラスがまったく動作しているかどうかをテストする方法もわかりません。何かアドバイス?

答えて

0

うわー、私は実際に自分自身を考え出したとは思えませんが、明らかに私はしました!

おそらくネットビーンズはNBMを正しく作成せず、単にメインのフォルダを除外しているということが私には起こりました。私は、サンプルプロジェクトから新しいNBMを作成しようとしましたが、それがうまくいかなかったと推測します。だから私の次のステップは、NBMファイルの名前を.zipに変更し、手動で "メイン"フォルダをアーカイブに追加し、名前を.nbmに戻すことでした。これは仕事と私のアップデータクラスは今正しく呼ばれている、私はまたmain.propertiesのオプションが実際にmainClassを除いてオプションであることがわかった。

これは将来的に誰かに役立つことを願っています。私はバグレポートを提出して、これを修正する可能性があります:https://netbeans.org/bugzilla/show_bug.cgi?id=262580

関連する問題