问题描述
我一直在寻找将.pbxproj文件转换为xml文件以解析CI管道的方法。在Mac上,我可以使用“ plutil -convert xml1
是否有其他解决方案/解析此文件的方式?我们的目标是验证所有文件都包含在多个xcode目标中。
解决方法
如果您熟悉红宝石,则可以使用Xcodeproj宝石。它使您可以直接解析pbxproj
文件,而无需转换为xml
。
正如您已经发现的,pbxproj 实际上只是一个 plist(我相信是旧式的 nextstep 格式;http://www.monobjc.net/xcode-project-file-format.html)。
为了解析它,您需要能够parse a plist on Ubuntu。
那里有几个选项,包括 plist-util,它可以工作但没有相同的 API。就我个人而言,我分叉了一个 drop-in replacement for plutil,这样我就不需要更新我们的脚本来分别考虑 Linux 和 Mac 环境。