3

Windows、Mac OS、Linuxで動作するSWTベースのJavaアプリケーションがあります。私はそれをWindowsマシンで開発し、Linux用のテスターとMac用のテスターを持っています。現在、私のプロセスでは、Windowsマシン上のプラットフォームごとに実行可能な.jarファイルを作成しています(Eclipse.orgのプラットフォーム固有の.jarファイルとlibファイルを参照しています)。私はWindows用の動作するインストーラーを持っています-これもWindowsマシンでのビルドによって生成されます。Macユーザー用の標準のMacOSインストーラーを作成したいと思います。これを行う正しい方法は、.appバンドルを作成し、dmgファイルを介して配布することです。これはうまくいっていません。SWTを使用し、すべてのプラットフォームでコマンドラインから実行できるJavaアプリが動作しています。Windowsで.dmgを作成する方法があります。しかし、これまでのところ、.appバンドルを機能させるためのすべての試みは失敗しました。

私はこのチュートリアルに従うことから始めました:http ://www.eclipse.org/swt/macosx/

しかし、アプリケーションを実行すると、PowerPC用のアプリケーションがサポートされていないというエラーが表示されます。これは、java -jarを使用してコマンドラインから機能するのと同じバイナリを使用しているため、問題は私がバンドルしている方法にあるはずです。ページのサンプルHelloアプリも機能しませんが、別のエラーメッセージが表示されます。

私は一日中検索していて、この有望な話を見つけました:http: //www.parleys.com/#st=5&id=2891&sl=72

その講演で、講演者は、標準のJavaランチャーを使用して任意のプラットフォームでMacOS.appバンドルを作成する方法があると述べています。しかし、そのようなものはまだリリースされていません。

私も有望に見えるこの投稿を見つけました:http://www.intransitione.com/blog/take-java-to-app-store/

しかし、このレシピは、MacOSマシンでビルドする以外は機能しないと言っています。

私がやりたいのは、WindowsインストールとLinuxインストールとともに、Windowsマシン上にMacOSX用の.appバンドルを作成することです。アプリバンドルの一部としてjreも含めることをお勧めします(これはすでにWindowsとLinuxで機能しています)。誰かが私を正しい方向に向けてくれることを願っています。

4

1 に答える 1

4

これを見たことがありますか?

.appは、いくつかの特別なファイルを含む特別な構造を持つ単なるディレクトリです。作成したら、ビルドするたびにJARを更新するだけで済みます。これは、MyApp.app / Contents / Resources / Java/MyJar.jarにあります。

My.app/Contents/Info.plistにもいくつかのJava固有のプロパティがありますが、これらを最初に設定した方法から変更する必要はおそらくありません。

于 2012-11-30T21:41:07.903 に答える