无法在路径上加载平台

Jay*_*son 46 mercurial xcode filemerge

filemerge用于解决HG冲突时,我收到以下错误

FileMerge[18002:707] Unable to load platform at path
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform
Run Code Online (Sandbox Code Playgroud)

小智 21

我在Git中有相同的FileMerge警告.当我查看Xcode的首选项时,我可以看到iPhoneSimulator和iPhoneOS平台都没有安装,但当我查看"/Applications/Xcode.app/Contents/Developer/Platforms"时,目录确实存在.

我没有为iOS开发,所以我删除了iPhoneOS.platform和iPhoneSimulator.platform并且警告消失了.

如果您确实需要这些平台,请尝试从Xcode正确地重新安装它们.

  • Thx nox,它有效.正如@Nagel指出的那样,不需要删除.它看起来像是在搜索以.platform结尾的目录.这也适用:`cd /Applications/Xcode.app/Contents/Developer/Platforms/;``sudo mv iPhoneSimulator.platform iPhoneSimulator.platform_RENAMED-TO-AVOID-FILMERGE_ERROR;``sudo mv iPhoneOS.platform iPhoneOS.platform_RENAMED-TO-避免-FILMERGE_ERROR` (3认同)

小智 10

我尝试iPhoneSimulator.platform/Info.plist从二进制转换为xml,确认Filemerge不再产生错误.然后我把它转换回二进制,但仍然,Filemerge很好.

$ cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform
$ sudo plutil -convert xml1 Info.plist
$ sudo plutil -convert binary1 Info.plist
Run Code Online (Sandbox Code Playgroud)

免责声明:灵感来自@ user3761183!

  • 在我的情况下,将文件转换回二进制文件恢复了错误消息.将它们保存为XML会使消息远离. (4认同)

小智 6

我试图将所有*.platform/Info.plist来自binaryxml1它解决了这一问题.奇怪......