gpt4 book ai didi

ios - 代码签名资源规则路径在 Jenkins 上失败,CODE_SIGN_RESOURCE_RULES_PATH

转载 作者:可可西里 更新时间:2023-11-01 03:30:26 24 4
gpt4 key购买 nike

我不太关心人们如何对待以下问题。

基本上听起来像是“在 Jenkins 上构建失败,出现 ResourceRules.plist:无法读取资源

我的情况是:

1) Jenkins

2) 我在本地使用 Xcode 7 beta(在一个单独的分支上)

3) 我的队友在 6.4.1 中工作,对他们来说一切正常

4) Jenkins slave 安装了 Xcode 6.4.1

有些人会说“这个问题被问了数百万次”,比如 here , here , here , here .

但是 documentation说如下:

Resource Rules

Systems before OS X Mavericks v10.9 documented a signing feature (--resource-rules) to control which files in a bundle should be sealed by a code signature. This feature has been obsoleted for Mavericks. Code signatures made in Mavericks and later always seal all files in a bundle; there is no need to specify this explicitly any more. This also means that the Code Signing Resource Rules Path build setting in Xcode should no longer be used and should be left blank.

所以我的问题是,为什么每个人都如此迅速地绕过、破解、解决这个问题,而文档清楚地表明它应该是空白的并且已经过时了?

这背后的真正问题是什么?为什么在几年内不需要的东西上构建失败?

最佳答案

我遇到了同样的问题。 Mr.Dan Cutting建议的解决方案here为我工作。

为了节省一些时间,这是我们需要的 Web 链接。

“从 Mavericks 开始,在签署应用程序时不应包含资源规则选项,但出于某种原因,脚本仍会将此选项传递给代码签名工具。

解决方法是更改​​ PackageApplication 脚本,使其不再执行此操作(这将需要 sudo 访问权限)。脚本的第 155 行构造了传递给代码签名者的参数,因此我们可以简单地删除对资源规则的引用:“

//Remove - Begin
- my @codesign_args = ("/usr/bin/codesign", "--force", "--preserve-metadata=identifier,entitlements,resource-rules",
- "--sign", $opt{sign},
- "--resource-rules=$destApp/ResourceRules.plist");
//Remove - End

//Add - Begin
+ my @codesign_args = ("/usr/bin/codesign", "--force", "--preserve-metadata=identifier,entitlements",
+ "--sign", $opt{sign});
//Add - Starts

关于ios - 代码签名资源规则路径在 Jenkins 上失败,CODE_SIGN_RESOURCE_RULES_PATH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32370497/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com