如何在Xcode中配置目标使用特定的Info.plist?

5

我有一个Xcode项目,其中有很多目标(iPhone,iPad,OS X)。

我需要为每个目标使用不同的Info.plist文件。

对于iOS,我没有遇到任何问题,一切都可以正常构建。但是对于OS X,我会收到以下消息:

No Info.plist file in application bundle or no NSPrincipalClass in the Info.plist file, exiting

在OS X目标构建设置中,我输入了以下内容:
Info.plist File: /MyApp/Resources/Info-osx.plist

我该如何解决这个问题?我是不是忘了什么要指定的东西?
谢谢。
3个回答

2
您是否在OS X目标的info.plist中设置了NSPrincipalClass?NSPrincipalClass是用于启动OS X应用程序的主类。


1
在构建设置中,info.plist 的路径是相对于您的项目源的。 如果删除第一个 /,它应该可以工作。
此外,在目标中不要包含 info.plist,当您编译项目时,它会为您生成在应用程序中。

我给出的路径只是一个示例,在实际情况中它是用($SRC_ROOT)定义的。但我尝试了你的建议,结果遇到了同样的问题。此外,我的Info.plist不是目标的一部分。到目前为止还是相同的问题。 - jchatard
2
你是否在 info.plist 中为 OS X 目标设置了 NSPrincipalClassNSPrincipalClass 是用于启动 OS X 应用程序的主要类。 - rckoenes
太棒了,你的最后一条评论帮了我很多!谢谢! - jchatard

0

我也遇到了同样的问题,但解决方法是this,通过在Build Settings中将Create Info.plist Section in Binary设置为Yes

希望能帮助其他人解决类似问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接