【问题标题】:Trying to compile an XCode project with a workspace on Jenkins slave尝试在 Jenkins slave 上使用工作区编译 XCode 项目
【发布时间】:2012-11-01 20:49:02
【问题描述】:

我有一个 Jenkins 奴隶构建单个 xcode 项目,工作完美。

但是,我有一个带有工作区的项目,其中一些 3rd 方文件设置在工作区的根目录中,并使用 gitmodule 然后导入到项目as described here 中。

当 Jenkins 编译并到达 AppDelegate.h 时,它会在尝试从库中导入文件时抛出错误。

fatal error: 'RestKit/Restkit.h' file not found #import <RestKit/Restkit.h>

我通过指向工作区来编译项目。但是,它现在在到达包装阶段时会失败。我没有看到工作区中创建的构建目录。

** BUILD SUCCEEDED **

Cannot remove *.ipa files from a non-existing directory:
 /Users/leon/Work/projects/wearehive/flatstr/build/Flatstr/dev/jenkins/workspace/Snug-debuOLD/build/Debug-iphoneos

 Packaging IPA
 FATAL: null
 java.lang.NullPointerException
at au.com.rayh.XCodeBuilder.perform(XCodeBuilder.java:421)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:705)
at hudson.model.Build$RunnerImpl.build(Build.java:178)
at hudson.model.Build$RunnerImpl.doRun(Build.java:139)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:475)
at hudson.model.Run.run(Run.java:1434)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:239)

【问题讨论】:

  • 您是否正确指定了在哪里查找标题?换句话说,您在日志中的-I 选项是什么?
  • 请您详细说明一下。我不确定你的意思。
  • XCode 调用一个编译器(我相信它是 gcc)来编译你的文件。当编译器调用回显到控制台时,它包含的选项之一是告诉它在哪里查找导入/包含的标头。我认为该选项是-I(类似于 C/C++ '传统')。请检查该选项的内容 - 它应该包含您的 3rdparty 目录,以便包含工作。我怀疑它引用不正确。
  • 我可以在控制台中看到正确的路径。
  • OK,(1)是绝对路径还是相对路径?更好的是,它到底说了什么? (2) 检查代码是否真的在工作区中找到。

标签: xcode continuous-integration jenkins continuous-deployment


【解决方案1】:

你的项目=>构建设置=>标题搜索路径,添加跟随路径:

"$(SOURCE_ROOT)/RestKit/Build/Headers"

一定要勾选它们前面的复选框。

【讨论】:

    【解决方案2】:

    我使用 xcode 插件并将其用于SYMROOT 值而不是空格来解决问题。

    ${workspace}/build/[app name]/Build/Products

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-30
      • 2017-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-05
      • 1970-01-01
      相关资源
      最近更新 更多