私は自分の Java Swing アプリケーションを AppleScript 対応にしたいと考えています。
オープン、印刷などの事前定義されたイベントに応答しようとしているだけではありません。
AppleEvents が Listener インターフェイスを介して表示されるのが最善です。
編集: Apple Events についての私の理解を少し説明すると、私が怠け者ではないことを示すのに役立つかもしれません。:-) 多くの定義済みイベントに応答する方法を示すコードをここに書きました。
Apple Events は、Java 以外のインターフェースを使用して通常のアプリケーションに配信されます。私が発見した限りでは、これらのイベントを取得するための Java メソッドは提供されていません。Apple Event テクノロジには、アプリケーションが応答するイベントと、Apple Events をプログラムで構築するための 4 文字のコードを人間が読める形式で記述する「用語」ファイルの作成が含まれます。javax.script.ScriptEngine のインスタンスを作成しても、私が望むことはできません。Java プログラムが AppleScript の呼び出しを開始できるようにしますが、AppleScript に Java プログラムを呼び出させる手段はありません。
明確にするために、次の方法を示すライブラリまたは例が既に作成されていますか?
特定の Java メソッドを AppleScript メソッドおよび/またはクラスを AppleScript クラスとして「可視」としてマークまたは登録します。
宣言的なアプローチに失敗しました。Java アプリケーションに送信された Apple Events をキャプチャするための Java メソッドはありますか? イベントがバイトの配列として返されるだけの場合は、イベントを解析して Swing イベントに変換し、逆のプロセスを使用して、Apple イベントを送信したアプリケーションに結果を返すことができます。
それとも、多くの JNI コードを記述する必要がありますか?