当我尝试存档我的应用时,我在Xcode中遇到了一个奇怪的错误。
我正在使用Ionic和Ionic CLI工具。该应用程序专为Android而构建,并且在Google Play商店中处于测试阶段。
在Xcode中我收到此错误:
clang: error: no such file or directory: '/Users/SubjectiveEffect/myApp/platforms/ios/CardsApp/Plugins/de.appplant.cordova.plugin.email-composer/APPEmailComposer.m'
clang: error: no input files
Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1
所以看起来de.appplant电子邮件插件有一些错误。电子邮件插件适用于Android,但在iOS上的Ionic View中无效。我不确定这个插件是否与Ionic View不兼容。
有人有什么想法吗?
Upate:
我卸载了这个插件,我现在得到了同样的错误,但是来自不同的插件!
clang: error: no such file or directory: '/Users/SubjectiveEffect/myApp/platforms/ios/CardsApp/Plugins/com.danielcwilson.plugins.googleanalytics/UniversalAnalyticsPlugin.m'
clang: error: no input files
Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1
所以我很确定这是一个插件问题。
任何人都知道为什么或如何解决它?我在Mac上使用标准cordova命令从命令行安装,如ngCordova所示。
编辑:要清楚 - 这些文件夹确实不存在。这些插件在Android中运行良好但是......
答案 0 :(得分:2)
你的错误很奇怪,可能是结构文件夹发生了什么事。 我会尝试做这样的事情:
在进行此测试之前,请制作平台/ ios的备份副本。
cd my-folder-app/
ionic platform remove ios
ionic platform add ios
现在应该需要从备份和粘贴中复制,例如图标,启动屏幕到新鲜平台/ ios文件夹,然后重新应用您所做的一些最终更改。
ionic build ios
然后打开xcode:
如果您需要配置架构,首先需要对其进行编辑:
从左侧面板中选择存档,从右侧选择Build Configuration:如果要发布应用,请选择Release;如果要在测试设备上安装应用,则选择Debug。然后单击“关闭”。
更新:
为了确保您的错误不依赖于离子项目请进行此测试:
cd projects-folder/
ionic start myTestApp tabs
cd myTestApp/
ionic platform add ios
ionic build ios
现在按照xcode上的相同步骤归档应用程序。
答案 1 :(得分:1)
我从未真正知道发生了什么。
我所做的是移除iOS平台并重新添加它。这只是创建了更多的错误,虽然由于某种原因,正确的文件夹存在。然后我发现我的Android版本无法正常工作。
我删除了所有内容并重新添加了所有内容,也更新了Ionic。
然后XCode会打开但冻结。硬冻。退出它的唯一方法是强行关闭Mac。我甚至卸载了XCode并重新安装了它。同样的事情。
最后,我使用命令行擦除XCode中的所有预设,这样它就可以在没有加载任何项目的情况下打开。现在它可以工作了,Android版本似乎也在起作用。
我不知道错误发生在哪里,因此我无法正确地将任何人标记为正确,因为这会误导。解决方案:清洁和燃烧,重新开始。 :)