سؤال

I am trying to sign my java app on Mavericks OS using Xcode 5.0.2 -

#!/bin/sh
if [ -f "/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate" ]; then
export CODESIGN_ALLOCATE="/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate"
elif [ -f "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate" ]; then
export CODESIGN_ALLOCATE="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate"
else
export CODESIGN_ALLOCATE="/usr/bin/codesign_allocate"
fi
codesign --deep -s "my name" MayApp.app
codesign -v MayApp.app && echo MayApp.app is Signed Successfully!

Earlier I have asked as Unable to launch App built on Mavericks because at that time my machine was on Mountain Lion 10.8.2, but now I have Mavericks. Now situation is similar to my server machine where we build app, as -

  • Java : jdk7u21
  • Xcode : 5.0.2

Still I am facing the same error on launching app i.e -

admins-iMac-4:~ admin$ open /Users/admin/Desktop/APP/MyApp.app 
LSOpenURLsWithRole() failed with error -10810 for the file /Users/admin/Desktop/APP/MyApp.app.

If I sign without --deep parameter then -

SigningApp:
     [exec] MayApp.app: code object is not signed at all
     [exec] In subcomponent: /Users/admin/Desktop/BUILD/MayApp.app/Contents/PlugIns/jdk1.7.0_21.jdk
     [exec] MayApp.app: code object is not signed at all

I have tried with multiple combinations to sign like but all are vain -

  • codesign --deep -s "my name" MayApp.app
  • codesign --force -s "my name" MayApp.app
  • codesign --force -s "my name" MayApp.app/Contents/PlugIns/jdk1.7.0_21.jdk

Tried to sign jdk before signing app, but nothing happen with app.

Everything was working fine before Mavericks, earlier no need of using --deep parameter within signing statement required.

If I am building app WITHOUT SIGNING app then it launching fine!!

Please suggest any way of signing app at Mavericks.

Thanks

هل كانت مفيدة؟

المحلول

My issue has been resolved by updating Java from jdk7u21 to latest jdk7u45, the detailed information added here - How to preserve alias property while signing app?

Thanks

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top