Xamarin App编辑info.plist名称不能以'<'开头字符

时间:2016-06-29 15:00:47

标签: xamarin xamarin.ios info.plist

当我在Xamarin应用程序上使用Mac OSX文本编辑器编辑info.plist时,当我尝试使用命令行工具进行构建时遇到此错误:

/Applications/Xamarin\ Studio.app/Contents/MacOS/mdtool --verbose build --f --target:Build --configuration:"Distribution|iPhone" --buildfile: {my project solution}

{my project} /Info.plist:error:加载'Info.plist'时出错:名称不能以'<'开头字符,十六进制值0x3C。第59行,第2位。

我实际上是在尝试实施this fix for the background image

唯一有效的方法是点击Xamarin Studio中的info.plist,它没有提供添加其他XML值的明确方法。

2 个答案:

答案 0 :(得分:1)

经过几个月的面对,我得到了自己问题的答案。我还在构建过程中使用了一个名为Plistbuddy的应用程序。这实际上是在Info.plist上重新安排了XML。因此,这不是修改的问题,而是Subversion客户端实际上存在合并冲突并且在文件本身中粘贴<<<<<<< .mine文本。

Encountered unknown tag <<<<<< on line 59 
Error Reading File: ../Containers/Touch.Container/Info.plist
Encountered unknown tag <<<<<< on line 59
Error Reading File: ../Containers/Touch.Container/Info.plist
Xamarin Studio Build Tool 

因此,下次构建时,Plistbuddy修改的Info.plist现在与文件夹位置上的内容冲突。这发生在正在更新和构建的Jenkins Build Mac上。

我做了两件事 更改Jenkins上的SVN插件以恢复和更新,而不仅仅是更新 修改Info.Plist后清除Jenkins工作区。

可以使用Xamarin Studio或XCode修改Info.plist。我建议使用XCode,因为它提供了Info.plist XML的所有有效标签。 Xamarin Studio将使用其当前标签。如果我知道svn问题,我可能一直用Mac文本编辑器改变文件没有问题。

我计划用Plistbuddy编写一个脚本,以便在签入之前更新版本号。

答案 1 :(得分:0)

就我而言,我在textEdit中打开了info.plist并删除了不需要的行(例如&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;