如何使用 Xcode 5.0.2 在 Mavericks 上签署应用程序? [英] How to sign app on Mavericks with Xcode 5.0.2?

查看:70
本文介绍了如何使用 Xcode 5.0.2 在 Mavericks 上签署应用程序?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用 Xcode 5.0.2 在 Mavericks OS 上签署我的 Java 应用程序 -

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!

之前我问过无法启动基于 Mavericks 构建的应用 因为当时我的机器是 Mountain Lion 10.8.2,但现在我有了 Mavericks.现在情况类似于我们构建应用程序的服务器机器,如 -

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.

如果我在没有 --deep 参数的情况下签名,则 -

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 "我的名字" MayApp.app
  • codesign --force -s "我的名字" MayApp.app/Contents/PlugIns/jdk1.7.0_21.jdk

在签署应用程序之前尝试签署 jdk,但应用程序没有任何反应.

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

在小牛队之前一切正常,之前不需要在签名声明中使用 --deep 参数.

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

如果我正在构建应用程序而不签署应用程序,那么它可以正常启动!!

请建议在小牛队签署应用程序的任何方式.

Please suggest any way of signing app at Mavericks.

谢谢

推荐答案

我的问题已通过将 Java 从 jdk7u21 更新到最新的 jdk7u45 得到解决,详细信息添加在此处 - 如何在签署应用程序时保留别名属性?

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?

谢谢

这篇关于如何使用 Xcode 5.0.2 在 Mavericks 上签署应用程序?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆