2011-05-26 61 views
56

我切换到Xcode 4并加载了我的项目,这在Xcode 3中完美运行。当我运行它时,出现一条错误消息:Xcode无法打开Info.plist - 错误说“没有这样的文件”

文件“Info.plist”无法打开,因为没有这样的文件。

我已经看过Xcode中的文件,它在那里。那为什么不能打开?

+3

当有疑问时,清理(建立/清理所有目标),关闭,重新打开和构建。 – PengOne 2011-05-26 22:43:54

+0

不,没有帮助。 – 2011-05-26 22:53:40

+2

下一步,删除对“Info.plist”(不是文件!)的引用并将其添加回去。 – PengOne 2011-05-26 22:56:00

回答

130

该文件存在于您的Xcode项目文件夹是不够的。您是否已验证该文件是否在应用程序目标的构建设置中正确引用,以便将其正确复制到应用程序包中?它与标准资源(即,它不是目标成员中的目标成员复选框)中的成员不完全相同,而是因为它在正确格式化的包中的重要性而成为构建设置。

导航到项目(在项目导航器中选择它),在目标列表中选择应用程序目标,然后单击生成设置选项卡。在“包装”部分下,确保“Info.plist文件”已正确设置为位置/文件名称。

+3

我从“Project Explorer”重命名项目后,我开始出现此构建错误。该解决方案有助于解决问题。谢谢。 – 2014-02-08 08:32:09

+2

再次感谢Thankyou(这是我第二次这样做),它总是在本地化文件时发生,然后将它移动到en.lproj中,因此以前的引用无法找到它 - 将它插入路径目录解决它 – Rambatino 2014-10-24 12:16:14

+0

我们必须确保我们提及正确的路径以及plist文件的正确名称。很好..它的工作原理... – 2015-07-13 10:21:15

1

如果appname-Info.plist在项目 - >目标/信息下不可见,请转到摘要选项卡,它会询问appname-Info.plist文件。从建议中选择正确的文件。

1

在目标>打包> Info.plist文件下,确保文件路径正确。

14

转到目标。右键点击测试目标。 yourProjectTests并将其删除

+8

如何删除目标帮助?这就像tellibg一个有构建错误的用户删除他们的项目一样,就好像它本身就是解决方案一样。我希望你永远不要进入医学...... – 2015-03-16 20:50:39

+0

不知道它是如何工作的。但它的工作。 – AsifHabib 2015-09-08 07:27:22

+0

嘿...它工作正常。 – Ramakrishna 2016-09-28 10:38:40

10

对我来说,问题是一些.storyboard文件在合并后有不同的部署目标。通过将所有故事板文件设置为使用“项目部署目标”来修复它。 enter image description here

+1

这解决了我的问题在xcode7 – BluGeni 2015-09-14 18:28:10

+1

这个固定的问题在XCode7我 – 2015-09-29 19:40:32

0

在我的情况下,该文件在那里,但格式不正确。如果您最近在文本编辑器中编辑了Info.plist,请取消该更改,然后重试而不破坏标记有效性。

5

对我来说,这是因为启用了plist文件的本地化(在跳板上给予应用程序的语言特定标识符)。

目标>构建设置>包装> Info.plist文件关键我改变了路径从AppName的/ AppName的-Info.plist中AppName的/ Base.lproj/AppName的统计信息。 plist和一切按预期工作。

记住,它lproj如在小L和没有资本一

希望这有助于。

+1

这可能允许您编译和运行,但它看起来并不像它实际上使用本地化的info.plist ... – royherma 2016-09-26 03:41:15

+0

我放弃了这个想法使用本地化应用程序名称一段时间。 – AceN 2016-12-27 21:50:32

+0

我想你们已经把info.plist与infoPlist.strings误会了。我只是遇到了同样的问题,我意识到我的错误,并尝试使用infoPlist.strings文件。没有不好的惊喜。有用。 – 2017-01-06 23:27:16

0

对我来说,问题是这个错误指的是我正在使用的库中的Info.plist,而不是项目中的实际.plist文件。

也许这将有助于未来的人。

+0

你怎么知道的?你最终做了什么来解决它?我是如此通用,我不知道它正在谈论哪个Info.plist。右键单击 - >在Finder中打开错误会将我带到之前在Finder中打开的任何文件,因为该文件不存在。 – RebelFist 2016-01-28 18:43:43

+0

@RebelFist:我在我的项目库中使用了红色的Info.plist文件。所以我的建议是在你的项目中寻找红色文件。 – Kobe 2016-01-29 17:59:12

+0

感谢您的回应!它最终成为一个指向错误位置的文件夹,即使其中的所有项目都指向了正确的位置。所以一切看起来不错,但是当我们建立时,我们得到了一个错误>< – RebelFist 2016-01-29 20:16:38

7

的Xcode 8

选择左侧窗格中的项目文件。然后打开常规选项卡,并添加了一个可让您选择文件的好按钮。 (您可能需要将其添加到您的项目结构以及)

enter image description here

0

在我的情况的重点之一是错过了,同时增加ATS遵守标志

<key>NSAppTransportSecurity</key> 

取而代之的是正确的如下面

<true/> 
<key>NSAppTransportSecurity</key> 
<dict> 
    <key>NSAllowsArbitraryLoadsInWebContent</key> 
    <true/> 
    <key>NSAllowsArbitraryLoads</key> 
    <true/> 
    <key>NSExceptionDomains</key> 
    <dict> 
     <key>some-service1.com</key> 
     <dict> 
      <key>NSExceptionAllowsInsecureHTTPLoads</key> 
      <false/> 
     </dict> 
     <key>some-service2.com</key> 
     <dict> 
      <key>NSExceptionAllowsInsecureHTTPLoads</key> 
      <false/> 
     </dict> 
    </dict> 
</dict> 

我在此

<dict> 
    <key>NSAllowsArbitraryLoadsInWebContent</key> 
    <true/> 
    <key>NSAllowsArbitraryLoads</key> 
    <true/> 
    <key>NSExceptionDomains</key> 
    <dict> 
     <key>some-service1.com</key> 
     <dict> 
      <key>NSExceptionAllowsInsecureHTTPLoads</key> 
      <false/> 
     </dict> 
     <key>some-service2.com</key> 
     <dict> 
      <key>NSExceptionAllowsInsecureHTTPLoads</key> 
      <false/> 
     </dict> 
    </dict> 
</dict> 

虽然一些网上XML验证器的没说出个XML是正确的,(这是不是),我用

plutil filename.plist 

要去目录中的plist文件存在(从终端),并结识了确切的行号有问题 参考:(https://stackoverflow.com/a/32494850/5438240

相关问题