每当我尝试在Xcode 6 Beta 4中运行我的应用程序时,我都会得到错误:

The file "MyApp.app" couldn't be opened because you don't have permission to view it.

无论我的目标是什么模拟器或设备,都会出现此错误。

我试过:

在Xcode中删除所有来自组织者的派生数据 正在修复驱动器上的权限 手动提升构建的MyApp.app的权限 重启电脑

有没有其他人遇到过这个问题并找到了解决方案?


当前回答

我遇到了AppDelegate缺失的问题。

创建一个最小值解决了这个问题:

import UIKit

@UIApplicationMain
final class AppDelegate: UIResponder,UIApplicationDelegate {
}

其他回答

我能够从xcode 6.1之前的备份中恢复我的项目,

一旦我从不同的目录打开我的工作空间,我就能够运行我的目标而不会出现这个错误。 模拟器现在也可以正常工作了。

如果你谷歌这个错误消息的文本,你会在StackOverflow,苹果开发论坛,Reddit等地方发现大约20个关于Xcode无法运行编译后的可执行文件的错误消息。

In these threads you will find many people offering various suggestions about how to fix the problem: changing product name to match project name, changing build phase options, something with info.plist, changing compilers to or from Clang, etc. Presumably the suggestions are offered in good faith because they solved the problem for someone, but the answers are so varied that it is clear that the error message is generic and this is an important point if you are receiving it: this error seems to mean that something is wrong with the binary. Ignore its actual text: it may have nothing to do with permissions.

对于这个错误没有通用的解决方案。错误消息是完全通用的;假设它意味着“坏二进制文件”。如果你收到它,解决方案取决于你正在尝试做什么,改变了什么,为什么你突然看到这个错误。谷歌您的具体情况,而不是这个错误消息。

在我的例子中,我感觉这是一个常见的例子,我试图做的是在现代Xcode上构建一个旧的iOS项目,我想有9年了。解决方案是切换到遗留构建系统,这导致了编译错误,因为在旧项目中没有现代架构目标,可以通过手动添加它们来修复。

我的项目也遇到了同样的问题。后来发现项目中使用的第三方(fmdb for SQLite)文件包含Info.plist。

简单地删除信息。Plist文件为我工作!

我的天哪! !我花了几个小时来解决这个问题。

在XCode 7.3上,我的项目没有任何问题。

我错了

我只是添加了物理文件夹,并将我的文件移动到其中,问题开始了。

我什么都试过了

默认的编译器 清洁和构建 重置模拟器和重启模拟器,Xcode, iPhone甚至mac 更新Info.plist 删除派生数据 编辑项目文件夹的权限 检查我的架构

什么都没用:(

我是如何决定的

我是关于创建新项目,然后我只是删除那些物理 我添加的文件夹,干净的构建和是的!!

它的工作原理!

当我在Xcode 10.3中添加两个objective-c文件时,没有一个解决方案适合我。我通过以下步骤固定,

进入构建阶段 检查.m文件是否存在于编译器源代码中。如果不加的话 在.m文件旁边添加编译器标志的-objc标志