警告:复制包资源构建阶段包含此目标的Info.plist文件

时间:2010-06-22 17:37:11

标签: ios iphone xcode build target

我已将一个项目分成两个版本,并为每个版本分配一个plist文件。一切正常,但我不断得到这个构建警告:

  

警告:Copy Bundle Resources构建阶段包含此目标   Info.plist文件'MyApp-Info.plist'

当我尝试构建MyApp时,我得到了这个。为第二个目标构建会产生相同的错误(警告中为SecondTarget-Info.plist)。我不确定为什么它是一个警告,因为我希望构建包含.plist文件。每个.plist文件都有一个目标成员资格(对于他们自己的构建)。

这个警告意味着什么?有没有办法让它消失?

6 个答案:

答案 0 :(得分:584)

https://developer.apple.com/library/content/qa/qa1649/_index.html

摘录:

  

您收到此警告是因为您可能已将Info.plist文件添加到Copy Bundle Resources构建阶段,如图所示

enter image description here

  

INFOPLIST_FILE构建设置指定与目标关联的Info.plist的名称。构建目标时,Xcode会读取此构建设置并将引用的Info.plist复制到应用程序包中。因为Xcode自动处理Info.plist,所以不应将其添加到Copy Bundle Resources构建阶段或将其作为目标成员。

     

要解决此警告,请从Copy Bundle Resource构建阶段中选择Info.plist,如图1所示,然后单击Remove( - )按钮将其从阶段中删除。

答案 1 :(得分:65)

修复xcode 4:

1)通过选择并点击删除来删除对info.plist文件的引用。

2)再次添加info.plist文件但不选择目的地并取消选中“添加到目标”选项。

答案 2 :(得分:2)

如果有人使用Xcode 3遇到此问题,要修复它,请单击“组和文件”下左栏中的.plist文件,然后在右上角区域中取消选中.plist文件名称旁边的框在靶心图标下的列中。您需要缩小编辑器(查看 - >缩放编辑器输出)以显示复选框。

答案 3 :(得分:0)

另一个解决方案是:

您可能不小心从“目标成员资格”核心数据中删除了项目文件。

  1. 从左侧的项目导航器中选择Main.storyboard

  2. 转到右侧的“文件检查器”(第一个标签)

  3. 找到“目标会员”列表

  4. 启用复选框

  5. 花一点时间进行处理,但是在您处理的同时,还要检查项目中的LaunchScreen.storyboard,.xcdatamodelid,Assets.xcassets和所有.swift文件。它们应该都已启用为目标成员身份。

  6. 注意:Info.plist不应启用目标成员身份。

希望这会有所帮助。

答案 4 :(得分:0)

对我来说,这与ionic framework post

有关

唯一的区别是我改变了

ValueError: Error when checking input: expected flatten_4_input to have 3 dimensions, but got array with shape (1, 4).

CODE_SIGN_IDENTITY = iPhone Distribution
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution

根据 Xcode 自己的建议,而不是帖子中描述的“iPhone Developer”。另外,我使用的是cordova而不是离子。如果您也是,此文件位于 CODE_SIGN_IDENTITY = Apple Development CODE_SIGN_IDENTITY[sdk=iphoneos*] = Apple Development

ps:记住将项目的签名设置设为自动(即使取消/再次检查也有帮助)

答案 5 :(得分:-1)

就像一张纸条......我会尝试写一篇关于它的好雷达,但在Xcode的Storyboards中处理本地化的方式真的很奇怪。如果您询问"在Finder"中显示,您将无法看到您选择的.storyboard文件,而是包含其包含的文件夹。我认为这与故事板的本地化有关。一旦我将它从英语改为德语(因此在root或en.lproj中没有该文件),我就开始遇到麻烦了。