NetBeansモジュールを開発していて、カスタムプロジェクトタイプ(EsperProjectクラス)で機能するアクション(アノテーションを使用して、layer.xmlレコードに変換されます)を宣言しました。
@ActionID(category = "Run", id = "my.package.RunEsperAction")
@ActionRegistration(displayName = "My Action", asynchronous=true)
@ActionReferences({
@ActionReference(path = "Menu/BuildProject", position = 0)
})
public final class RunEsperAction implements ActionListener {
private final EsperProject project;
public RunEsperAction(EsperProject project) {
this.project = project;
}
@Override
public void actionPerformed(ActionEvent ev) {
// do sth with project
}
}
BuildProjectメニュー(実際には[実行]メニュー)からアクションを実行できますが、必要な2つの場合(両方ともアノテーションで宣言されているように非同期で呼び出されます)で動作させることはできません。
- プロジェクトのコンテキストメニューからアクションを実行したいと思います。
- メインメニュー項目「メインプロジェクトの実行」からEsperProjectを実行するときに、アクションをトリガーする必要があります。
提案をありがとう。