2016-04-12 7 views
1

この例をhereからコピーしましたが、作業に問題があります。私はそれを使用する場合Javapackager 8、el Capitanを使用してJarファイルをDMGに変換する方法

mkdir -p package/macosx 
cp you_icon_app.icns package/macosx 
jdk=$(/usr/libexec/java_home) 
$jdk/bin/javapackager -version 
$jdk/bin/javapackager -deploy -native dmg \ 
    -srcfiles you_app.jar -appclass you_app_name -name you_app_name \ 
    -outdir deploy -outfile you_app_name -v 
cp deploy/bundles/you_app_name-1.0.dmg you_app_name-installer.dmg 

、私はこのメッセージが表示されます。

Exception in thread "main" com.sun.javafx.tools.packager.PackagerException: Error: Bundler "DMG Installer" (dmg) failed to produce a bundle.

答えて

0

私は問題を発見しました。 Javapackagerを実行すると、完了時に出力DMGが開いたままになります。次回試行すると、DMGを作成できないため(すでに開いています)、失敗します。

Finderを見ると、左側にDevicesというセクションがあります。ここには開いているDMGがすべて表示されます。それらの隣にあるイジェクト記号をクリックすると、それらを閉じることができます。

私が持っていたもう一つの問題は、誤ってTexteditがテキストエディタであると仮定し、javapackagerを実行するために使用していたシェルスクリプトを編集するのに適しているということです。そうではありません。それはダッシュをハイフンに変えます(同じように見えますが、javapackagerはそれらを好きではありません)。二重引用符を使用すると、各ペアの2番目が逆引用符に変わります。 Javaパッケージャはそれらを好きではありません。

関連する問題