(0xE8008018):用于签署可执行文件的身份验证已不再有效。

44

我正在尝试在Xcode上调试我的应用程序,但是出现了以下错误:

The identity used to sign the executable is no longer valid.

Please verify that your device’s clock is properly set, and that your signing certificate is not expired.

(0xE8008018).

enter image description here

目前我知道有很多关于这个问题的问题,而且我已经尝试了所有可能的方法来解决它,到目前为止我尝试过的(没用)

  • 一些人建议重新启动Xcode。
  • 刷新账户。
  • 从钥匙串中删除所有证书。
  • 吊销成员中心的所有证书。
  • 手动安装证书。
  • 检查我的设备时钟(显然)
  • 删除Xcode(卫星)并重新安装它。
  • 检查我的项目构建配置,并确保选择了开发者帐户。
  • 检查我的帐户到期日期(5天前已续订)
  • 检查是否需要接受某些条件和条款(无)
  • 禁用我在成员档案中拥有的设备
  • 在多个iPhone上进行测试(相同结果)
  • 检查一个稳定的git标签/分支(我认为项目可能也被损坏了)

我担心这可能是苹果的暂时性问题或者是Xcode的错误,尽管几小时前我在我的iMac上工作得很好,但当我切换到MacBook Pro时就出现了这个问题(我总是没有任何问题这样做)。

运行:

  • OSX Yosemite 10.10.4(14E46)
  • Xcode 6.4

2
你在问题中涵盖了所有可能的解决方案,做得非常好。那是一个有用的清单。 - Richard Venable
11个回答

68

尝试移除并重新添加您的Apple ID,这对我有用。

  1. 打开xcode: 首选项...
  2. 选择账户
  3. 选择您的Apple帐户
  4. 删除 (-)
  5. 再次添加您的Apple帐户 (+)
  6. 运行您的应用程序!

问题已解决,甚至无需退出和重新启动(Xcode 6.3.2)。 - bitsand
总是要进行清理!这是我唯一没做的事情……叹气。 - Dwayne Forde

29

经过多小时的调查,签署项目的 shell 脚本在某个点失败了,没有向 Xcode 返回报告。

我注意到在 Xcode 的 DerivedData 文件夹(位于 /Users/yourUsername/Library/Developer/Xcode/DerivedData/)中有两个文件夹,它们以我的项目名称相同,但以不同的哈希结尾,例如:

ProjectName--dcakkvkdhqvxstehdiuzwbpsmdal
ProjectName--kurbctkdhqvxuytrwnczwbpsmdal

我关闭了Xcode,并确保删除了两个文件夹,不知怎么回事,Xcode在某个时候生成了两个不同的项目文件夹,删除文件夹后重新启动Xcode即可解决此问题。


这对我也起作用了。虽然我的派生数据文件夹位于不同的位置,但我通过(https://dev59.com/hGAg5IYBdhLWcg3wBXOs) 找到了它。虽然我无法通过Xcode删除该文件夹,但我复制并粘贴了xcode告诉我的路径,然后按上述方法在命令行中删除了它。(facepalm) 我想要回来我这一个小时的时间。 - gregkerzhner
没有任何方法对我有用,但这个解决方案。我完全疯了,又生成了证书和配置文件。我有三个同名的项目文件夹。删除它们后,魔法出现了!谢谢! - mursang

25

我也经历过相同的情况。

但是通过在我的 Mac 上删除并重新下载配置文件,问题被解决了。

配置文件的位置是:

/Users/yourUsername/Library/MobileDevice/Provisioning Profiles/


这种情况发生了很多次,我一直在撤销我的证书。这个方法长期有效! - Séraphin Hochart

4

我也遇到了同样的问题,以下是帮助我的方法:

  1. 将配置文件设置为错误的(其他项目)
  2. 运行项目并弹出提示信息,表示配置文件有误并建议修复问题
  3. 点击修复问题

你也可以切换到自动模式,但它能正常工作。 - BootMaker

1

一个可能帮助一些人的解决方案

  1. 前往developer.apple.com
  2. 进入身份证书页面
  3. 然后单击“配置文件”。如果您找到了一些无效的配置文件,请编辑它们。
  4. 确保您检查了主要配置文件。
  5. 单击生成并关闭。
  6. 现在在XCode中,删除您的配置文件,再次添加它。
  7. 您可以开始使用了。

如果您更改了主要电子邮件,则会发生这种情况。


1

只需登录您的开发者帐户并创建新的开发者证书或撤销旧证书并创建新证书即可解决此问题。


0
这个问题的唯一解决方案是从文件夹中删除它。
~/Library/Developer/Xcode/DerivedData/YourAppName- 

这样一来,一切都会恢复正常!

干杯!


0

对我来说,这些都没有起作用。

vomako在签署可执行文件的标识不再有效中提供的答案确实起了作用 -

"Xcode解决方案:

在Xcode中,转到首选项-->帐户-->查看详细信息

按左下角的刷新按钮(在Xcode 7中称为全部下载)"

他的帖子结束了

现在是一个小的刷新符号(循环箭头),然后点击请求按钮

希望这能为某人节省时间。


0
所有的回答都很有帮助,但在我的情况下,开发者证书已过期,这就是我在构建应用程序时遇到此错误的原因。
所以只需删除证书并创建新证书即可解决问题。具体操作为:Keychain -> Login -> My Certificates。

0

从以下路径中删除文件和文件夹:

  • ~/Library/MobileDevice/Provisioning Profiles/
  • ~/Library/Developer/Xcode/DerivedData/

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接