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

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

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

我试过:

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

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


当前回答

不知道这个问题是否相关,但也许对像我这样的人来说,这是一个解决方案。

就我而言,我有一个有很多目标的项目。每个目标都是基础项目的自定义,基础项目是Cocoa Touch静态库,目标是应用程序。即使将主文件添加到库编译中,但没有添加到每个目标中,也会出现错误消息。我做了什么?在Compile Sources部分中手动将主文件添加到每个目标,没问题。

其他回答

我正在使用Xcode 6 GM,我遇到了同样的问题。 我所做的是去构建设置->构建选项(你可以搜索“编译器”), 然后将“Compiler for C/ c++ /Objective-C”的选项改为默认编译器。

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

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

我有这个错误与我的一些旧的项目,我正在从橱柜出来更新。由于某些原因,在Xcode 6中使用旧代码似乎会导致这种情况。

我已经在我所做的所有项目中修复了这个问题:

删除派生数据 在产品:做清洁 进入项目目标中的构建设置,进入构建选项,并将“Compiler for C/ c++ /Objective-C”的值更改为“Default” 编译器”。

我从模拟器和设备两方面来研究这个问题。

这里有一个棘手的现象。如果我将项目复制到一个新位置,那么当我第一次运行时,这个问题就有可能消失。但当我打扫干净后,这个问题就来了。

我已经尝试了这个问题几乎所有的答案,但都没有。

在版本控制系统git的帮助下,我可以检查出以前版本的代码,并查看哪些修改导致了这个问题。

在我的项目中,HEAD版本是可行的,我最新的umcommitted修改将导致这个问题。

因此,我检出我的代码的可行版本中的每个文件,以定位问题。当我签出coin.xcodeproj/project时。Pbxproj(硬币是我的应用程序名称),这个问题已经解决了。

解决方案:签出可工作的coin.xcodeproj/project。pbxproj,对于我的情况下,我只是使用HEAD版本是可以的。

git checkout HEAD coin.xcodeproj/project.pbxproj


总结一下:

project.pbxproj: checkout the workable project.pbxproj file. Build Options: set Compiler for C/C++/Objective-C to default compiler. Executable file: set to $(EXECUTABLE_NAME) or directly set to your app name. Build > Clean:just do a clean. Replace the Info.plist with a new file from a new project Duplicate Info.plist in the project: just remove the extra one. Derived Data.: Find the Derived data path by Xcode->preference->locations->Derived data, then delete it with rm -r /Users/roofe/Library/Developer/Xcode/DerivedData And there may other reasons, you can refer to “The file ”MyApp.app“ couldn't be opened because you don't have permission to view it”

我有类似的问题(xCode 6.2)的示例代码下载。我试图在信息中将可执行名称设置为默认。但是这并没有起作用。

相反,将Compiler for C/ c++ /Objective-C更改为Default Compiler(Apple LLVM 6.0),而不是Unsupported Compiler(com.apple.compilers.llvmgcc42) for project。