Xcode突然停止在硬件上运行项目:"无法启动xxx.app:..没有这样的文件.."

Gru*_*kes 139 xcode ios

Xcode已经停止运行我的应用程序了,它在我从设备中删除它后直接启动,并尝试通过在Xcode中重新运行来重新安装(之前我曾做过数百次).

它说

"无法启动XXX.app"

"没有这样的文件或目录(/Users/Mylaptop/Library/Developer/Xcode/DerivedData/MyApp-ekxcbebfpzkahtfkujyqkcwprzia/Build/Products/Debug-iphoneos/MyApps.app/MyApp)."

我重新启动了手机,重新启动了Xcode,清理了一切,重建了一切.此错误消息不会消失.

这是我自使用以来一直使用的Xcode 4.5,如果我恢复到4.3.2然后Xcode说"完成正在运行的应用程序"但它实际上没有做任何事情 - 该应用既没有安装也没有运行.

我完全卡住了 - 再也无法在设备上运行任何东西了.

有什么建议?

Sud*_*kar 125

这真的很烦人.在许多不同的情况下会发生此错误.有时重新启动Xcode,解决了问题.如果没有,请按以下步骤操作:

断开您的设备.

从您的设备中删除该应用.

退出Xcode(不要只是关闭窗口,退出)

删除派生数据文件夹(~/Library/Developer/Xcode/DerivedData/-gbrvhlvwmpiobxdujegtghggrffp- 或类似的东西)

现在再次启动Xcode,连接设备并运行项目.它应该工作正常.

来自DhilipSiva 博客

  • 这对我来说很关键.欣赏答案中的细节水平. (4认同)
  • 不工作......我在设备上运行 (2认同)

Alm*_*g C 57

尝试删除-Info.plist文件中的"所需设备功能".

您不能在3G上使用armv7,并且您不能在任何新设备上使用armv6,因此只需完全删除此属性即可.

  • 这是唯一对我有用的溶剂.已经尝试刷新证书,清理文件夹重启设备,xcode和mac没有任何帮助.只需删除该属性,它就安装好了. (2认同)

wih*_*ing 38

我找到了答案.iOS部署目标的版本与我设备的操作系统版本不同.

  • 也为我工作......我正在将设备类型从"iPhone"更改为"Universal",xcode自动将目标更改为6.0,我最初没有注意到.回到4.3并且它起作用了...... (3认同)

Jor*_*per 13

首先使用info.plists尝试上面的一些并删除派生数据,清理等.

我的解决方案:退出XCode,重新打开项目.转到Finder中的派生数据.删除了所有项目的数据(都是可以删除的,但我会先尝试删除有问题的项目数据).然后它再次起作用.从XCode删除派生数据不起作用.

  • 派生数据文件夹的路径:/ Users/<User>/Library/Developer/Xcode/DerivedData / (4认同)

小智 10

以下解决了我的问题...我的应用程序在调试/发布中为我工作,然后我构建了一些临时存档和调试/发布版本停止工作.

症状:

  • 从Xcode启动到设备时出现无效的权利错误(使用权利...)
  • 运行模拟器时立即中止,没有错误(已完成运行)
  • 无法启动...目录blabla .../build/product/debug-iphoneos/...从Xcode启动到设备时找不到.

最终在尝试从其他人的痛苦中获益后,我在Targets [AppName]中找到了:

Build Settings
Build Locations
Build Products Path build
Run Code Online (Sandbox Code Playgroud)

应该

Build Products Path build/Products
Run Code Online (Sandbox Code Playgroud)

不知道这是如何设置错误的.这必须在Xcode/Springboard中的某处进行硬编码,因为"Products"出现在Xcode和Device控制台中.这是Xcode 4.5.1.

截图在哪里设置构建/产品


Sco*_*oll 7

我解决了这个问题

重命名我的XCode项目上方的目录

XCode为我修改项目名称.

XCode项目导航器中,单击项目名称,它应该允许您像在Finder中的文件一样重命名它.删除派生数据没有帮助.


ecr*_*eif 7

我使用CMake构建了我的XCode项目,并以某种方式将它(或我的愚蠢的自己)删除或清空了info.plist中的属性"可执行文件".我将其设置回$ {EXECUTABLE_NAME},然后再次运行.

我真的花了很多时间来完成所有的建议和修复,直到我终于找到了这个问题.

希望这会帮助一些人在同样的问题上挣扎

编辑:

在某种程度上,CMake搞砸了我的plist文件.我创建了自己的Info.plist并使用以下方式:

SET_TARGET_PROPERTIES( MyApp PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_LIST_DIR}/MyApp.plist )
Run Code Online (Sandbox Code Playgroud)

我的plist里面有这个条目:

<key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string>
Run Code Online (Sandbox Code Playgroud)

不幸的是,CMake似乎仍在解析该文件,并且因为它的CMake变量语法而将$ {EXECUTABLE_NAME}替换为空字符串.我的快速解决方法如下:

SET( EXECUTABLE_NAME "\${EXECUTABLE_NAME}" )
Run Code Online (Sandbox Code Playgroud)

现在它就像一个魅力.

我可能只是遇到这个问题,但谁知道呢.


Unf*_*ter 5

我有同样的问题,但在我的情况下,我的info.plist中有一个错误的要求(要求iPhone 3Gs的陀螺仪)


cmy*_*myr 0

我通过在构建设置中选择“none”作为我的可执行文件,关闭 xcode 并手动删除 ~/Library/Developer/Xcode/DerivedData 中的所有派生数据,然后在重新启动 xcode 后选择默认的可执行文件来解决这个问题。但不太确定是什么原因造成的。