我有以下错误:
命令/ usr / bin / codesign失败,退出代码为1
以下是我尝试解决这个问题的方法:
只有当我尝试在我的设备上构建时才会出现错误,在模拟器上一切正常。
你有什么建议吗?
答案 0 :(得分:54)
我有完全相同的错误,并在阳光下尝试了一切,包括本页其他地方的建议。对我来说问题是,在Keychain Access中,实际的Apple WWDR证书被标记为“始终信任”。它需要是“系统默认值”。这也适用于您的开发和分发证书。如果其中任何一个被错误地设置为“始终信任”,则显然会导致此问题。
因此,在 Keychain Access 中,单击 Apple Worldwide Developer Relations Authority Authority 证书,选择获取信息。然后,展开信任设置,对于“使用此证书:”的组合框,选择“系统默认值”。
codesign
失败有多个原因。
答案 1 :(得分:30)
我遇到了完全相同的问题,这对我来说很有用:
Xcode>偏好>帐户>查看详细信息>只需刷新配置文件
即可似乎Xcode中的帐户未使用最新的配置文件进行更新,因此快速刷新将其整理出来。
答案 2 :(得分:26)
感觉有必要分享这个,即使这很荒谬。
我在Mac上设置了第二个开发者帐户,无法对其进行任何编码。错误是“用户取消了操作”。
简单的重启就为我解决了这个问题。
答案 3 :(得分:10)
我正在争夺大约2-3个小时来使用Parse API对项目进行编码。原来,嵌入式框架导致了这个问题。确保设置“复制代码签名”(见图)。 如果不起作用,请从列表中删除Parse和Bolts框架并将其从项目中删除,然后重新添加它们。
答案 4 :(得分:9)
刚刚解决了同样的问题。我创建了一个包含我的图标的资源文件夹,然后通过右键单击>将其添加到我的项目中。添加文件> [选择资源文件夹]。显然这是一个坏主意。
而是在项目中创建一个新的组(在我的案例中称为"资源"),然后右键单击>将文件添加到该文件,然后选择单个文件。项目立即建成。
答案 5 :(得分:7)
答案 6 :(得分:6)
对我来说,我刚刚更新到Xcode 8,并将我的Swift 2.2代码转换为Swift 3代码,我在单元测试和UI测试中遇到错误。我刚刚清理过,然后所有的错误都消失了。
答案 7 :(得分:2)
我遇到了同样的问题,很长一段时间都无法解决这个问题。我尝试了这个页面上的所有内容和其他内容,但它仍然无效。但最终,我确实找到了解决办法。
要使其正常工作,请确保Xcode未运行。关闭Xcode后,打开终端并输入命令:
xattr -rc /[The File Directory of your project found in the File Inspector of your .xcodeproj file in Xcode]/
显然不要将文本放在括号中,只需将其替换为所说的内容即可。点击进入。如果命令下面没有任何内容,请不要担心,它不适合我。之后,您可以关闭终端并打开Xcode。现在一切都应该没问题。 注意:运行项目可能需要一些时间,但只需等待即可。
另请注意:请勿关注此答案,因为它不起作用。这是修复它对我有用的一种方法,但它可能对你不起作用,因为你可能还有其他东西被破坏了。
答案 8 :(得分:2)
对于将来遇到此问题的任何人(不想重建他们的项目),还有一个问题是您的产品名称中是否有空格。我建议您浏览项目和目标的属性(右键单击 - >获取信息)。对于我的项目,唯一需要空格的地方是用于包显示名称的plist。
答案 9 :(得分:2)
经过数小时的谷歌搜索和尝试不同的事情,这就是为我解决的问题:
确保系统中没有证书> Keychain Access上的Certificates选项卡。从那里删除所有重复的证书。
除了开发人员证书之外,还要在配置门户的证书下安装WWDR中间证书,并确保在Login>中看到它。 Keychain Access上的证书选项卡。
答案 10 :(得分:1)
以下是我的解决方法:
答案 11 :(得分:1)
我第一次尝试按照Provisioning Assistant创建配置文件时出现此错误,结果发现他们没有提到WWDR Intermediate Certificate
。我安装了它,它对我来说很好。
答案 12 :(得分:1)
在我的情况下,我的钥匙串中有一个额外的过期分发证书 - 我从KeyChain Access中删除了证书,并且编译开始再次运行。
答案 13 :(得分:1)
大多数答案会告诉您证书重复。这对我的情况来说是正确的,但答案遗漏了如何做到这一点。
对我而言,我的帐户已过期,我必须获得新证书并进行安装。接下来,我查看了Keychain并删除了过期的证书,但仍然收到错误。对我有用的实际上是搜索" iPhone"在Keychain中并删除所有过期的证书。显然,其中一些没有显示在系统/证书或登录/证书中。
希望这有帮助!
答案 14 :(得分:1)
如果用户在/usr/bin/codesign failed with exit code 1
文件夹中没有纹理文件的文件扩展名,通常会发生错误Models.scnassets
。 macOS
通常会生成带有隐藏扩展名的文件。
例如:您有一个文件
myTexture
,但它还必须包含扩展名–myTexture.png
。
答案 15 :(得分:1)
如果你正在使用phonegap / cordova:
从Cordova建造时我得到了这个,但对我来说解决方案要简单得多。权限问题。
只需将文件设置为正确的权限
即可chmod -R 774 ./projectfolder
然后设置所有权
chown -R youraccname:staff ./projectfolder
答案 16 :(得分:1)
上面的一些答案提到了问题,但没有明确说明纠正它的步骤。
这是我的尝试之后,它变得非常令人沮丧,这似乎对我有用:
问题是由于您的Apple Developer portal或可能在您的计算机中存在重复的证书而导致的。这样做我没有任何负面影响,到目前为止它已经奏效。
关闭Xcode!
您必须从开发者帐户中删除现有证书 访问:https://developer.apple.com/account/ios/certificate/development/ 并选择开发帐户(应该有多个证书) 我通过点击它们并选择撤销来撤销每一个。
2.从Mac上的钥匙串中删除证书
答案 17 :(得分:0)
我最近遇到了同样的问题。 罪魁祸首是钥匙串访问。
步骤: 转到->实用程序->钥匙串访问 钥匙串访问: 编辑->更改钥匙串“登录”的密码
更改密码。 关闭并重新打开Xcode,再次清理并构建。
如果选项-更改钥匙串“登录”的密码-变灰:
确保在“选择的钥匙串”下->登录并打开了挂锁图标。 要打开挂锁,您需要钥匙串密码。如果您不知道密码,请转到步骤2。
未打开挂锁且选项仍显示为灰色。 作为最后的手段: 钥匙串访问->首选项 优先: “重置我的默认钥匙串” 重置登录名。但是,请小心,因为存储的钥匙串将被删除,并且您可能还需要在其他连接的设备上重新登录。
答案 18 :(得分:0)
当我将名为“Resources”的文件夹添加为“Create folder references”时,出现此问题,当我将“Resources”重命名为另一个随机名称时,此问题就消失了。
希望它会有所帮助。
答案 19 :(得分:0)
花了几个小时搞清楚这个问题,它是由xcode引起的非常一般的错误。我的一个框架在其中一台笔记本电脑上失败并且出现以下错误:
pip install pylbfgs
但是,没有针对此框架设置的Codeign,但仍然因代码签名错误而失败。
以下是答案:
我已经生成了新的开发证书(使用新的私钥)并安装在我的新Mac上。
此错误与XYZ.frameowrk无关。我们新创建的证书要求XYZ.framework : unknown error -1=ffffffffffffffff
Command /usr/bin/codesign failed with exit code 1
和按钮"codesign wants to sign using key "my account Name" in your keychain"
时,基本上代码签名失败了。
问题是我从未接受过它。一旦我点击允许。它开始运作了。
希望这有帮助。
答案 20 :(得分:0)
以下是我解决同样问题的方法。它可能对某人有帮助。
我从服务器上删除了开发配置文件(我正在使用),然后创建一个名称略有不同的配置文件。 我用过它并且有效。
答案 21 :(得分:0)
对我来说,它可以通过以下操作来工作:
删除“登录”中的所有现有开发人员证书
然后转到xcode项目->转到目标-> 常规->选择团队。
,选择之后,只需遵循下面将出现的内容即可(再次尝试按钮和填充物。。)。最后,您必须提供“登录”钥匙串密码
在“ 3”之后。您将在您的“登录”钥匙串中看到新的证书,对我而言,也不会再出现代码签名错误。
答案 22 :(得分:0)
我要做的就是禁用自动签名,然后重新启用它,然后选择我的团队身份。而且有效!
答案 23 :(得分:0)
在这里尝试了大多数解决方案,而对我有帮助的是使用以下方法在XCode中清理了build文件夹: 产品->清理并重建项目
答案 24 :(得分:0)
在Xcode中:转到当前用户的“首选项”注销。
关闭Xcode
在钥匙串中:转到“登录”和所有项目
- Sort by kind
- remove "Apple Worldwide Developer Relation Certification Authority"
- remove "Developer ID Certification Authority"
- remove "iPhone Developer ...."
打开Xcode
转到“首选项”并登录到您的用户Apple帐户
- This will reload your developer certificates you previous deleted
重建项目(应该是成功的构建)
在您的本机设备上运行构建
答案 25 :(得分:0)
我在一个现有项目中遇到了此错误代码,在我向该项目添加了三个PNG文件后,该项目突然无法签名。事实证明,PNG文件之一是罪魁祸首。所有三个PNG文件都是使用Pixelmator创建的,应该具有相同的结构。但这根本不会用其中一张图像进行签名。删除图像,它起作用了。再次添加,失败。重命名图像,仍然失败。我结束了从头开始构建新图像的过程,一切都已修复。
答案 26 :(得分:0)
对我有用的是将KeyChain上的所有证书都检查为“使用系统默认值”,所有证书都必须具有此配置。是唯一有效的方法,并且请确保不会重复使用任何证书。
答案 27 :(得分:0)
对我来说,我只需要删除 xcode 中的“派生数据”
打开 Xcode (12.3) -> Xcode -> Preferences -> Locations -> 点击 DerivedData 位置箭头 -> 删除“DerivedData”文件夹 -> Clean and build
答案 28 :(得分:0)
这个非常复杂的问题的一个非常简单的答案。它不涉及代码签名以及与之相关的所有内容。
使用不再需要的旧应用程序。确保它有效,然后将其代码替换为具有代码签名错误的新应用程序的代码。旧应用程序现在应该可以正常工作,使用新应用程序完成您想要的任务。
只有失败:工作应用程序具有旧标题。
答案 29 :(得分:0)
对我来说,我在框架方案上启用了代码覆盖,而不是相应的测试方案。禁用代码覆盖率会对问题进行排序。
答案 30 :(得分:0)
当我在一个项目中有多个目标时,我发生了这个问题,并且我将CFBundleExecutable
plist属性更改为目标名称以外的其他属性。
因此,例如,我在一个项目中有以下目标:
SomeApp for OS X 将其CFBundleExecutable
属性设置为SomeApp
,这不仅与第一个名为 SomeApp 的目标冲突,而且是不同于它的目标。将 SomeApp for OS X 更改为 SomeApp ,然后重命名第一个目标对我来说很好。
答案 31 :(得分:0)
对我来说问题是HTTP代理
答案 32 :(得分:0)
当我遇到此错误时,原因是进入 Keychain Access ,并在被问到是否需要时选择 '禁止' 让程序访问保存的密码。返回并选择 '允许' 并输入我的系统密码修复了XCode中的问题。
答案 33 :(得分:0)
我在项目名称中有特殊字符,将其重命名为删除字符,问号,并确保已启用开发人员证书以解决此问题。
答案 34 :(得分:0)
如果有人使用Xcode ver。 3.x.x和从Mac OS 10.7升级到10.8,dev。工具将正常工作,除了新的codeign二进制..修复它只是复制旧的codesign和codesign_allocate二进制文件(我希望你有备份)到/ usr / bin /文件夹并重命名或备份新的。
答案 35 :(得分:0)
我转到Key Access,选择了私钥,并将XCode添加到可以访问它的应用列表中。这对我有用
答案 36 :(得分:0)
对我有用的解决方案与(我认为)升级到Xcode 4.2后路径行为的变化有关:
您不能再手动输入“armv6 armv7”,而必须输入$(VALID_ARCHS):两者都是项目的Build Settings窗格中Architectures部分下的Architectures和Valid Architectures字段。 Xcode将自动用'armv6 armv7'替换该语句。
这个字符串看起来与您手动输入的字符串完全相同,但仍然指向将与您的构建一起生成的实际正确路径,...或者至少这是我对它的看法:P < / p>
无关,我们曾经在其他签名旗下有“armv6 armv7”,现在把它拿出来并且工作正常。这必须是一个额外的。
谢谢,快乐的黑客攻击。 刚
答案 37 :(得分:0)
一个解决方案更适合我,如果您安装了两个版本的XCode并且安装了第二个而没有卸载第一个在同一目录(/ Developer /)中,那么您做错了。 所以对我有用的解决方案是:
1 - 使用命令sudo / Developer / Library / uninstall-devtools --mode = all卸载当前的Xcode版本。
2 - 安装您先拥有的第一个Xcode版本。
3 - 再次sudo / Developer / Library / uninstall-devtools --mode = all。
4 - 然后,一切都很干净,您可以安装所需的版本。
更多的事情:也许您需要在安装Xcode后重新启动计算机,甚至(在某些情况下)安装两次Xcode。
我希望我的工作花了很多时间才能知道,祝你好运!
答案 38 :(得分:0)
尝试在显示错误的“构建结果”视图中找出此错误的详细信息。在带有错误消息的行的右侧,有一个带有多行的图标。这将向您展示一些有用的细节。
通过这种方式,我发现我的钥匙串中有一个重复的iPhone开发人员证书 - 其中一个已过期。也许在您的钥匙串中搜索“iphone”(首先选择“所有项目”类别)。
答案 39 :(得分:-1)
以下步骤为我工作
答案 40 :(得分:-1)
答案 41 :(得分:-2)
我的真实 FIX 是:
唯一的问题是我的会员中心中的配置文件“无效”,因为旧的配置文件是由旧证书生成的。
重新生成证书或重新生成配置文件后,请确保下载它们并将其提供给Xcode。
答案 42 :(得分:-4)
我刚刚创建了一个新项目,复制了我所有的类和资源,然后就可以了!