iphone - 为企业分发创建 IPA 文件时出错 : "PackageApplication failed with exit code 1"

标签 iphone xcode distribution code-signing enterprise

我正在运行 XCode 4.2,当我构建、存档然后尝试在 Organizer 中创建 IPA 文件时,我收到以下错误消息:

PackageApplication failed with exit code 1.
Packaging application: '/Users/Brad/Library/Developer/Xcode/Archives/2011-08-06/*** 8-6-11 4.21 PM.xcarchive/Products/Applications/***.app'
Arguments: embed=/Users/Brad/Library/MobileDevice/Provisioning Profiles/***.mobileprovision  verbose=1  output=/var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/1376A091-5CA1-4393-AF29-34FFBFD49C74-1082-00000C64DB251DF1/app.ipa  sign=iPhone Distribution: ***.  
Environment variables:
HOME = /Users/Brad
LOGNAME = Brad
__CF_USER_TEXT_ENCODING = 0x1F5:0:0
DISPLAY = /tmp/launch-r5c1Ou/org.x:0
COMMAND_MODE = unix2003
VERSIONER_PERL_PREFER_32_BIT = no
PATH = /Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin
SHELL = /bin/bash
SSH_AUTH_SOCK = /tmp/launch-SjRZET/Listeners
Apple_PubSub_Socket_Render = /tmp/launch-4KUyaU/Render
TMPDIR = /var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/
USER = Brad
VERSIONER_PERL_VERSION = 5.10.0

Output directory: '/var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/1376A091-5CA1-4393-AF29-34FFBFD49C74-1082-00000C64DB251DF1/app.ipa'
Temporary Directory: '/var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U'  (will NOT be deleted on exit when verbose set)
+ /bin/cp -Rp /Users/Brad/Library/Developer/Xcode/Archives/2011-08-06/*** 8-6-11 4.21 PM.xcarchive/Products/Applications/***.app /var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/Payload
Program /bin/cp returned 0 : []
### Checking original app
+ /usr/bin/codesign --verify -vvvv /Users/Brad/Library/Developer/Xcode/Archives/2011-08-06/*** 8-6-11 4.21 PM.xcarchive/Products/Applications/***.app
Program /usr/bin/codesign returned 0 : [/Users/Brad/Library/Developer/Xcode/Archives/2011-08-06/*** 8-6-11 4.21 PM.xcarchive/Products/Applications/***.app: valid on disk
/Users/Brad/Library/Developer/Xcode/Archives/2011-08-06/*** 8-6-11 4.21 PM.xcarchive/Products/Applications/***.app: satisfies its Designated Requirement
]
Done checking the original app
### Embedding '/Users/Brad/Library/MobileDevice/Provisioning Profiles/***.mobileprovision'
+ /bin/rm -rf /var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/Payload/***.app/embedded.mobileprovision
Program /bin/rm returned 0 : []
+ /bin/cp -rp /Users/Brad/Library/MobileDevice/Provisioning Profiles/***.mobileprovision /var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/Payload/***.app/embedded.mobileprovision
Program /bin/cp returned 0 : []
+ /usr/bin/codesign -d --entitlements /var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/entitlements_rawunFQiwaj /var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/Payload/***.app
Program /usr/bin/codesign returned 0 : [Executable=/var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/Payload/***.app/***
]
+ /usr/libexec/PlistBuddy -c Set :get-task-allow NO /var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/entitlements_plistNowUyBmz
Program /usr/libexec/PlistBuddy returned 0 : []
+ /usr/bin/plutil -lint /var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/entitlements_plistNowUyBmz
Program /usr/bin/plutil returned 0 : [/var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/entitlements_plistNowUyBmz: OK
]
### Codesigning '/Users/Brad/Library/MobileDevice/Provisioning Profiles/***.mobileprovision' with 'iPhone Distribution: ***.'
+ /usr/bin/codesign --force --preserve-metadata --sign iPhone Distribution: ***. --resource-rules=/var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/Payload/***.app/ResourceRules.plist --entitlements /var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/entitlements_plistNowUyBmz /var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/Payload/***.app
Program /usr/bin/codesign returned 1 : [/var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/Payload/***.app: replacing existing signature
codesign_allocate: object: /var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/Payload/***.app/*** malformed object (unknown load command 8)
/var/folders/-K/-K95TJ0AGgaHq4MSn8EjL++++TI/-Tmp-/kNwZk2Uc3U/Payload/***.app: object file format invalid or unsuitable
]
error: codesign failed with error 1

注意:我用 * 替换了所有名称。

最佳答案

这个问题没有单一的答案,部分原因是苹果的错误消息不是非常具体。

对于我的情况,解决方案是这样的:

打开此 Perl 脚本:

/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/PackageApplication

并在顶部附近插入此行,例如“my $xxxx”声明之后:

$ENV{CODESIGN_ALLOCATE} = '/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate';

归功于http://loopingrecursion.com/index.php?t=codesign对于这个答案。

这个问题似乎是在安装了一些 XCode 4.2 beta 7 后出现的。我最终卸载了该版本并从头开始重新安装了 4.1,但仍然无法验证或共享,直到我采用了此修复程序。

关于iphone - 为企业分发创建 IPA 文件时出错 : "PackageApplication failed with exit code 1",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6969566/

相关文章:

iphone - iphone 应用内购买的价格,服务器端

iphone - UIWIndow 未声明 iOS 4.3 AppDelegate

r - 在Heatmap.2中设置距离矩阵和聚类方法

objective-c - 如何从同一个 NIB(源于 UITabController)加载 UIView?

python - scipy.stats.uniform 中 `a` 和 `b` 属性的混淆

r - 如何在R中生成具有指定对数正态分布的随机数?

iphone - NSBundle 的主要类

iphone - 我应该为 App Store 的每个应用程序创建一个唯一的 Apple App ID 吗?

使用 spritekit 的 iPad 和 iPhone 游戏的 iOS 坐标

iOS : OCLint is not working with xcode 9. 2