【问题标题】:Xcode, Git, Jenkins, PhoneGap 1.5.0 Build ErrorXcode、Git、Jenkins、PhoneGap 1.5.0 构建错误
【发布时间】:2013-03-26 03:11:20
【问题描述】:

我之前使用 phonegap 1.5.0 开发了一个应用程序,现在我们刚刚推送到 git 存储库。该应用程序已在 xCode 中成功构建,我能够安装该应用程序并在 iPad 上运行它,但是当我们尝试从 Jenkins 构建它时,出现此错误

/Users/...../Classes/AppDelegate.m:28:
/Users/......./Classes/AppDelegate.h:31:13: fatal error: 'Cordova/CDVViewController.h' file not found
#import <Cordova/CDVViewController.h>

我真的不知道为什么会这样。我没有在 gitt 中包含任何导致此问题的文件吗?还是我需要采取任何额外的步骤将代码放入 git 中?对此的任何建议都非常感谢。

【问题讨论】:

  • @Amanda 你能解决吗?如果是,请将解决方案发布为答案。我也面临同样的问题。
  • Hi Apurv...抱歉回复晚了...我不能说我解决了它,但是我如何让我的 ios 在 Jenkins 中工作是通过将 cordova 库升级到 2.2.0。然后它工作:)

标签: ios xcode git cordova jenkins


【解决方案1】:

我的 PhoneGap 项目能够构建和生成 .ipa。

这是我使用 Jenkins 为 CI 集成所做的工作:

  1. 为 Jenkins 安装 Xcode 集成插件(管理 Jenkins --> 管理插件 --> 可用 --> Xcode 集成)。

  2. 在您的 Job 配置中,单击 Add build Step 按钮并选择 Xcode。

  3. 在 Xcode 配置中:

    3.1。在构建之前添加 Clean。

    3.2。添加项目的目标(例如:SamplePhonegap)。

    3.3。添加 SDK(例如:iphoneos6.1)。

    3.4。将配置添加为 Debug 或 Release。

    3.5。添加包含 .xcodeproj 的 Xcode 项目目录(例如:${WORKSPACE})。

    3.6。构建输出目录(例如:${WORKSPACE}/build)[PhoneGap App 的强制步骤]。

    3.7。添加构建 IPA。

    3.8。添加代码签名身份(例如:iPhone 开发者:S*** ** (6**)) .

    3.9。添加解锁钥匙串。

    3.10。添加 keyChain 路径(例如:${HOME}/Library/Keychains/login.keychain)。

    3.11。添加钥匙串密码。

最后构建您的应用 - 它将构建并生成 .ipa 文件。

注意:

3.6 步骤是强制性的,因为PhoneGap 项目有两个构建路径:一个是我们的项目构建路径,另一个是cordova 构建路径。 Jenkins 很难找到默认的路径(在 native 中不需要指定,因为它只有一个 Jenkins 可以轻松找到的构建路径)。所以必须提供 Build 输出目录路径。

【讨论】:

  • ${WORKSPACE}/build 为我解决了这个问题!
  • 如果我使用 shell 脚本使用 xcodebuild 和 xcrun 进行构建过程,如何使用。
【解决方案2】:

您可以尝试将 git 存储库克隆到本地计算机并从那里构建。如果没问题,说明需要检查 Jenkins 设置/配置。

【讨论】:

  • 我想我知道为什么会这样。我的科尔多瓦库没有物理放置在项目文件夹中。您认为这是找不到文件的原因吗?也许将它放在物理文件中后它会解决问题?还是我需要在 xcode 中做任何特殊配置才能将文件放入项目文件夹中?
  • 通常你可以从 finder 拖到 xcode 中,将它包含到项目中。
【解决方案3】:

这是迄今为止我找到的最好的解决方案。Original Answer

Xcode 6.x

$(OBJROOT)/UninstalledProducts/include 添加到BuildSettings->标题搜索路径

Xcode 7.x

$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include 添加到BuildSettings->标题搜索路径

1.双击添加即可。

2.将$(OBJROOT)/UninstalledProducts/include 改为$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-02
    • 1970-01-01
    • 2014-11-03
    • 2013-03-25
    • 2014-11-11
    • 2017-03-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多