【问题标题】:Jenkins iOS build error: no such module 'XXX'Jenkins iOS 构建错误:没有这样的模块 'XXX'
【发布时间】:2016-06-29 16:29:42
【问题描述】:

我正在尝试通过 Jenkins 和 CocoaPods 归档我的代码。

但是build报错,好像项目能找到CocoaPods生成的模块。

我使用 swift 编码,项目在 Xcode 中构建成功

podfile 是这样的:

platform :ios, '8.0'
use_frameworks!

target 'MyProject' do

pod 'AFNetworking'
pod 'ObjectMapper'

end

Jenkins 中的错误日志是:

....
/Users/xxx/.jenkins/jobs/LIFE_iOS/workspace/MyProject/Core/Model/ItemResult.swift:10:8: error: no such module     'ObjectMapper'
import ObjectMapper
       ^

** BUILD FAILED **


The following build commands failed:
CompileSwift normal arm64 /Users/xxx/.jenkins/jobs/LIFE_iOS/workspace/MyProject/MGFramework/CustomViews/MartyJunior/MJTableViewTopCell.swift
...
CompileSwiftSources normal arm64 com.apple.xcode.tools.swift.compiler
(5 failures)
Build step 'Xcode' marked build as failure
Finished: FAILURE

【问题讨论】:

  • 完成 pod install 后,您应该打开 Xcode.workspace 并构建它而不是 .project。试试看
  • 感谢您的回复,它确实有效。还有一个新错误,你能帮我解决它吗? ` === BUILD TARGET ObjectMapper OF PROJECT Pods WITH CONFIGURATION Release === Check dependencies Code Sign error: Provisioning profile does not match bundle identifier: The provisioning profile specified in your build settings ("xxxxx") has an AppID of "me. xxx.ios”,它与您的包标识符“org.cocoapods.ObjectMapper”不匹配。 ** BUILD FAILED ** 以下构建命令失败:检查依赖项构建步骤“Xcode”将构建标记为失败已完成:FAILURE`
  • 请在下方标记为答案。对于您的第二个问题,请参阅:stackoverflow.com/questions/27973011/…

标签: ios swift jenkins


【解决方案1】:

正如@Santosh 所指出的,在使用 Xcode UI 时打开工作区是正确的做法。 由于您可能在命令行(或 Jenkins 是)上使用 xcodebuild,而不是指定项目和目标,您必须使用工作区和方案运行 xcodebuild。只是想添加这个,因为你要求詹金斯。

所以如果没有 CocoaPods,你可以做到:

xcodebuild -project MyProject.xcodeproj -target MyTarget -configuration Release

现在,使用 CocoaPods,您必须:

xcodebuild -workspace MyProject.xcworkspace -scheme MyScheme -configuration

【讨论】:

  • 谢谢,我在尝试在 VSTS 上构建时遇到了同样的错误。我将“配置”参数保留为空,它解决了问题。
【解决方案2】:

在 Jenkins 项目配置中指定工作区名称。按照配置 > 构建 > Xcode > 高级 XCode 构建选项 -> XCode 工作区文件。这使 jenkins 能够使用工作空间而不是项目调用 xcodebuild,其中包括 pod 依赖项。确保在 xcode 构建步骤之前有一个执行 shell "/usr/local/bin/pod install" 类型的构建步骤。

【讨论】:

    【解决方案3】:

    完成pod install 后,您应该打开.xcworkspace 而不是.xcodeproj。请尝试并告诉我。

    【讨论】:

      猜你喜欢
      • 2020-03-13
      • 2023-03-16
      • 2021-08-04
      • 1970-01-01
      • 1970-01-01
      • 2016-01-04
      • 2015-11-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多