JavaアプリケーションをMacOSXAppStoreに送信しようとしています。私のコードはすべて正しく署名されています(jars、dylibなど)。残念ながら、バイナリを送信すると、常に「無効なバイナリ」エラーが発生し、次のメッセージが表示されます。
開発者の皆様へ「tamaggoibiデスクトップ」の最近の配信で1つ以上の問題が見つかりました。配信を処理するには、次の問題を修正する必要があります。アプリサンドボックスが有効になっていない-次の実行可能ファイルには、entitlementsプロパティリストにブール値trueの「com.apple.security.app-sandbox」資格が含まれている必要があります。アプリのサンドボックス化の詳細については、アプリのサンドボックスページを参照してください。•tamaggoibi.app/Contents/MacOS/JavaAppLauncherこれらの問題が修正されたら、[バージョンの詳細]ページに移動し、[バイナリをアップロードする準備ができました]をクリックします。アプリのステータスが「アップロードを待機中」になるまで、送信プロセスを続行します。その後、修正されたバイナリを配信できます。よろしく、AppStoreチーム
私はこれを丸一日グーグルで検索しましたが、何も見つかりませんでした。誰かが.entitlementsファイルでJavaAppLauncherをサンドボックス化する方法の手がかりを持っていますか?
より多くの情報を提供するために、これが私がコードに署名する方法です:
/usr/bin/codesign --resource-rules desktop-app/target/dist/myApp/Contents/ResourceRules.plist --verbose --force --sign "3rd Party Mac Developer Application: XXX" desktop-app/target/dist/myApp
find desktop-app/target/dist/myApp.app/Contents/ -type f \( -name "*.jnilib" -or -name "*.jar" -or -name "*.dylib" \) -exec codesign --resource-rules desktop-app/target/dist/myApp.app/Contents/ResourceRules.plist --verbose -f -s "3rd Party Mac Developer Application: XXX" --entitlements desktop-app/target/dist/myApp.app/Contents/myApp.entitlements {} \;
codesign --resource-rules desktop-app/target/dist/myApp.app/Contents/ResourceRules.plist --verbose --force --sign "3rd Party Mac Developer Application: XXX" desktop-app/target/dist/myApp.app/Contents/Resources/binaries/ffmpeg
codesign --resource-rules desktop-app/target/dist/myApp.app/Contents/ResourceRules.plist --verbose --force --sign "3rd Party Mac Developer Application: XXX" desktop-app/target/dist/myApp.app/Contents/MacOS/JavaAppLauncher