Xcode 7.2:在“存档”中:解决问题:找不到“Cordova / CDVViewController.h”文件。 虽然在构build应用程序时没有这样的问题

在iOS中,我更新7.2。 我能够将我现有的项目build立到我的设备,没有任何问题。 但是,当将该项目存档以准备提交给app store时,出现构build错误 – Cordova / CDVViewController.h文件未find。 我经历了几乎所有没有find堆栈溢出和Google的解决方法/解决方法,而且他们都没有为我工作。 如果我回到Xcode 6.4我可以构build和存档没有问题,但我现在不能build立到我的设备,它运行的是iOS 9.1。

我猜这是新的Xcode版本设置的configuration问题。 有没有其他人遇到这个? 同样,通常的嫌疑犯(首选项>位置>派生数据>高级>唯一),标题searchpath等似乎都很好。

谢谢,Adisheshu

这个问题似乎出现在Xcode 7.2由于searchpath/包括。

解决这个问题的方式如下:

  1. 在Xcode TARGETS中select你的[projectName]

  2. 转到构build设置选项卡。

  3. 确保filter设置为“全部”而不是“基本”。

  4. search“标题searchpath”

  5. 双击并将此path添加到“Debug”和“Release”: $(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include

  6. 现在清理项目并重新启动 Xcode。

  7. 能够build立存档

  8. 就这样。

尝试每个解决scheme后,没有成功我跑了:

 cordova platform update ios 

这为我修好了。 (XCODE 7.3.1,Cordova 6.3.0)

参考: cordova应用程序无法存档与Xcode 7.1(Cordova / CDVViewController.h文件未find)

你应该把你的项目的Cordova iOS版本更新到3.9.2 (3/11/16的最新版本3)。 使用3.8.0时出现同样的错误,并且固定为3.9。

或者,你可以升级到cordovaiOS v4.1.0 (截止到3/11/16),但要注意你失去了对iOS 6和7的支持,并且cordova-plugin-screen-orientation 没有更新为使用4所以你必须locking你的应用程序的肖像或风景。

编辑:

没有升级,你可以在XCode中手动修复。 去

构build设置 – >标题searchpath:更改:

 $(OBJROOT)/UninstalledProducts/include 

至:

 $(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include 

( 在apache.org相关的问题 )

如果添加这一行:

 $(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include 

到标题searchpath(如“im3r3k”答案中所述)没有解决这个问题,还设置了这个:

 Build Settings -> Architectures -> Build Active Architecture Only -> YES 

我也有这个问题,但对我来说,添加path标题search是不够的。 我已经将CDVViewController.h添加到子项目CordovaLib.xcodeproj – > CordovaLib(target) – > Build Phases – > Headers – > Public

这对我来说是固定的:

  • 在Xcode中打开你的项目
  • 转到首选项 – >位置 – >高级
  • select“唯一”作为构build位置的选项
  • 产品 – >清洁
  • 产品 – >构build

采取从https://forum.ionicframework.com/t/cordova-cdvviewcontroller-h-file-not-found-in-xcode-7-1-beta/32232/40

对于我来说$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include已经在标题searchpath中 (使用El Capitan的XCode 8)。 然后,我在用户头部searchpath中添加了CordovaLib文件夹的特定path,并启用了recursive选项(对于像我这样的无经验的XCode用户,在树视图(第一个节点)中select项目以查看“构build设置”

但要小心空间! 经过大量的错误之后,从查找程序窗口中拖动文件夹更加安全,并将其填充为$(SRCROOT)/.. (续),这不是预期的,而是工作正常。

同样在XCode/Preferences/Locations/Custom Paths我用相同的方式添加了一个与之前相同的文件夹的CORDOVALIB名字(这次使用了完整的path,没有$(SRCROOT) )。

花了好几个小时才弄明白了

上述解决scheme不适合我。

 In my case, when I build my iOS platform, CordovaLib folder was not included. 1. Delete existing CordovaLib.xcodeproj 2. Add existing files. Add CordovaLib.xcodeproj from CordovaLib folder 3. Add dependencies and select CordovaLib 4. Add link Binaries with library and select libCordova.a 

而已!

我正在使用xcode 7.3,我遇到了同样的问题。 在我的情况下,错误是由于执行“cordova平台添加ios”时发生的错误,一个错误是因为在res文件夹中找不到图像,这是避免cordova平台添加ios完成正确。

还要在Build Settings中设置ENABLE BITCODE = NO

我有同样的问题,所以我只是从configuration文件中删除<icon src="icon.png" /> 。 然后我使用cordova platform remove ios和添加IOS cordova platform remove ios然后cordova platform add ios

对我来说,以下工作

Xcode 8.1 ios 10.x

(目标 – >构build设置 – >标题searchpath)

“$ {} PODS_ROOT /cordova/ CordovaLib /class/公共”

“$ {PODS_ROOT} / Headers / Public”文件夹为空

当我删除并重新添加项目时,我遇到了这个问题,一些资源文件如图标或飞溅屏幕没有find使项目根本没有创build。

补充回应。 加

 "$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include" 

不要replace看起来相似的现有的行,仍然需要向后兼容Xcode 7和Xcode 6.4。

点击这里