我一直在使用Cordova构建iOS应用程序的Meteor项目。它工作非常顺利一段时间,然后突然间我开始收到这个错误:
❯❯❯ meteor run ios
Error while running for mobile platforms: Error running
/Users/chet/.meteor/packages/meteor-tool/.1.0.37.19du6bc++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/cordova-scripts/cordova.sh
2014-12-23 13:35:00.970 xcodebuild[46060:3143193] error: InputFile /Users/chet/Code/meteor/5cmenu/.meteor/local/cordova-build/platforms/ios/5C Menu/5C
Menu-Prefix.pch 0 1418992636 959 33188... malformed line 9; 'InputFile' should have exactly five arguments
如果我打开.xcodeproj
中的.meteor/local/cordova-build/platforms/ios/
,项目运行正常。但是,它是我的流星应用程序的旧版本。
我尝试删除.meteor/local
,然后meteor run ios
。我犯了同样的错误。当我打开.xcodeproj
时,它在我尝试运行它时起作用了。
我还尝试meteor remove-platform ios
然后meteor add-platform ios
。然后我跑了meteor run ios
。我得到了同样的错误,但是当我打开.xcodeproj
时,它又有效。
这里有一个类似的[问题](https://github.com/meteor/meteor/issues/3105 )。
我尝试过的一些事情是deleting the Xcode DerivedData folder,并通过运行cmd+shift+K
来清理项目的Xcode构建缓存,这似乎完全不需要这个问题。
我还found a similar issue here说这是一个非致命错误"。
任何想法如何解决这个问题?
答案 0 :(得分:1)
因此重置Xcode版本的方法之一是使用rm -rf .meteor/local/
。然后meteor run ios-device
将构建一个新项目。但是,当你这样做时,由于某种缓存,你最终会得到他的PCH错误。
你会在错误中找到一个看起来像这样的路径
/var/folders/x5/mdr8syvj7lsb_sg_pr0j7y_h0000gn/C/com.apple.DeveloperTools/6.1.1-6A2008a/Xcode/SharedPrecompiledHeaders/
注意SharedPrecompiledHeaders
部分。删除以您的应用名称开头的应用。然后全部这样做
rm -rf .meteor/local/
meteor run ios-device
每次都有效
答案 1 :(得分:0)
你的路径中有一个空格,被解释为另一个参数。
/Users/chet/Code/meteor/5cmenu/.meteor/local/cordova-build/platforms/ios/ 5C菜单 / 5C
此处有更多信息:https://github.com/meteor/meteor/issues/3105#issuecomment-75580362