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