一尘不染

在Xcode终端中运行时找不到'Cordova / CDVViewController.h'文件

jenkins

因此,当我尝试从xcode终端构建代码时,它失败了,并给了我一个找不到“ Cordova /
CDVViewController.h”文件的错误,但是当我从xcode进行构建时,它就可以了。

在我的Xcode中,我完成了整个Cordova子目录的事情Upgrade
Cordova
。另外,当我运行列表。这是我在下面看到的:

xcodebuild-列表

有关项目“ myProject”的信息:

Targets:
    myProject

Build Configurations:
    Debug
    Release

If no build configuration is specified and -scheme is not passed then "Release" is used.

Schemes:
    myProject
    CordovaLib

环境:Xcode5,OS 10.8.5

我有什么想念的吗?之所以这样做,是因为我试图通过詹金斯来解决这个问题。我以为这是一个詹金斯问题,但后来我把它归结为xcode终端,却没有看到CordovaLib。


阅读 366

收藏
2020-07-25

共1个答案

一尘不染

我花了太多时间来解决这个问题,所以不共享是可耻的。出现此问题的原因可能有很多,但如果您觉得自己已经在CordovaLib中设置了所有内容(像我一样!),但仍然存在相同的问题。这可能是原因之一。当我运行

 xcodebuild  -scheme myProject -configuration "Release"

它正在成功构建,但是如果您不提供“ -scheme”,则默认情况下它将失败,而是使用“
Release”。该方案的参数将控制构建哪些目标以及如何构建它们,myProject方案包含子文件夹和对Cordovalib的引用。

现在,转到Jenkins,您需要在XCode插件的Advanced Xcode构建选项部分的“ Xcode Schema File”文本框中提供方案。

我的设置是Xcode作为我的奴隶,但这仍然可能适用于您拥有的任何Xcode和Jenkins组合-因此,当我运行

 xcodebuild  -list

我收到以下消息:

If no build configuration is specified and -scheme is not passed then "Release" is used.

This project contains no schemes.

解决方案是,在您的xcode项目中,转到“产品” |“方案” |“管理方案”,然后选中myProject和CordovaLib这两个项目的“
Shared”。编译。签入(因为我是从TFS那里获取的)。再次运行“ -list”命令,您将看到刚刚共享的方案。

希望这可以帮助!

2020-07-25