首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Jenkins,CODE_SIGN_RESOURCE_RULES_PATH上签署资源规则路径的代码失败

在Jenkins,CODE_SIGN_RESOURCE_RULES_PATH上签署资源规则路径的代码失败
EN

Stack Overflow用户
提问于 2015-09-03 08:21:33
回答 2查看 2.8K关注 0票数 7

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

基本上,这听起来像是“使用ResourceRules.plist: cannot read resources在Jenkins上构建失败”

我的情况是:

1) Jenkins

2)在本地,我在Xcode 7 beta版中工作(在一个独立的分支上)

3)我的队友在6.4.1中工作,对他们来说一切都很好

4) Jenkins从站安装了Xcode 6.4.1

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

但是 文档说:

资源规则 OSXMavericksv10.9之前的系统记录了一个签名特性(--资源规则),以控制包中的哪些文件应该被代码签名密封。这个特性已经被小牛淘汰了。用小牛做的代码签名,以后总是将所有文件密封在一个包中;不再需要显式地指定这一点了。这也意味着不再使用Xcode中的路径生成设置,而应该将其保留为空白。

所以,我的问题是,为什么每个人都这么快地绕过,黑客,解决这个问题,当文档明确指出,这应该是空白,它是过时的?

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

EN

回答 2

Stack Overflow用户

发布于 2015-09-24 19:35:09

我也有同样的问题。Mr.Dan for 这里建议的解决方案对我有用。

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

“对于小牛来说,在签署应用程序时不应该包含资源规则选项,但出于某种原因,脚本仍然会将该选项传递给代码签名工具。

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

代码语言:javascript
运行
复制
//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
票数 5
EN

Stack Overflow用户

发布于 2016-09-28 10:14:20

如果您使用了Xcode版本更大的6.1,那么更改下面的行

$(SDKROOT)/ResourceRules.plist

转到CODE_SIGN_RESOURCE_RULES_PATH=$(SDKROOT)/ResourceRules.plist

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32370497

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档