【问题标题】:Not able to Build Xcode Project using Jenkins & Pods无法使用 Jenkins 和 Pods 构建 Xcode 项目
【发布时间】:2017-06-07 05:24:09
【问题描述】:

我们使用的是 Jenkins 2.62。尝试从 Jenkins 构建时,出现以下错误:

[工作空间] $ /bin/bash -l /var/folders/km/33wcncls1874x2xv50nv43480000gn/T/jenkins1804164065511577211.sh /Library/Ruby/Site/2.0.0/rubygems/dependency.rb:318:in to_specs': Could not find 'claide' (< 2.0, >= 1.0.0) among 32 total gem(s) (Gem::LoadError) Checked in 'GEM_PATH=file:/Users/administrator/.jenkins/plugins/ruby-runtime/WEB-INF/lib/stapler-jruby-1.209.jar!/gem:/Users/administrator/Software/ruby', executegem envfor more information from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1402:inblock in activate_dependencies' 来自 /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1391:in each' from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1391:inactivate_dependencies' 来自 /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1373:in activate' from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_gem.rb:67:inblock in gem' 来自 /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_gem.rb:66:in synchronize' from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_gem.rb:66:ingem' 从 /usr/local/bin/pod:22:in `'

下面是我们在Execute Shell

中使用的脚本
**rm -fr *.xcworkspace
rm -fr ~/Library/Caches/CocoaPods/
rm -fr Pods/
rm -rf ~/Library/Developer/Xcode/DerivedData/*
/usr/local/bin/pod install
xcodebuild -workspace Proj.xcworkspace -scheme Proj_test -sdk iphoneos -configuration Release archive -archivePath ${WORKSPACE}/Proj/Build/Release-iphoneos/Proj.xcarchive
xcodebuild -exportArchive -archivePath ${WORKSPACE}/ChannelConnect/Build/Release-iphoneos/Proj.xcarchive -exportOptionsPlist ${WORKSPACE}/exportOptionsPlist.plist -exportPath ${WORKSPACE}/Proj/Build/Release-iphoneos**

当我们手动为服务器中的同一路径尝试“Pod 安装”时,它工作得很好。

我们可以更改 Jenkins pod 路径吗?

【问题讨论】:

  • 也许你安装了多个 cocoapods 版本,which -a pod 的输出是什么?
  • 我认为有两个 pod 下面是输出 /usr/local/bin/pod /Users/administrator/Software/ruby/bin/pod
  • 好的,echo $PATH 的输出是什么?
  • /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/administrator/kiranm/software/apache-maven-3.0.5/bin: /用户/管理员/软件/ruby/bin

标签: objective-c xcode jenkins cocoapods jenkins-plugins


【解决方案1】:

听起来 Jenkins 把你的 PATH 弄乱了。这是很常见的。您必须明确告诉 Jenkins 将 /usr/local/bin 添加到您的 PATH 中。

  1. 查看System Information -&gt; Environment Variables 下的当前内容以验证这一理论。

  2. 通过添加PATH="/usr/local/bin:$PATH"来调整Configure System -&gt; Environment Variables下的值

  3. 如果您有从站,则必须在 Manage Nodes -&gt; Node -&gt; System Info 下为每个从站配置它

【讨论】:

  • 谢谢 Sven,我尝试了这些步骤并在 Enveronmental Varible 中添加了路径 检查 URL ibb.co/isU5JF 但仍然遇到同样的问题,我们是否需要重新启动 Jenkins?
  • 是的,请尝试重新启动。如果这不起作用,请尝试为您的构建节点设置环境变量(+重新启动)。始终根据系统信息下显示的环境变量进行验证。哦,请将/Users/administrator/Software/ruby 也附加到您的自定义 PATH 值中。似乎在该路径上安装了一些宝石
  • 会不会像下面的路径/usr/local/bin: /Users/administrator/Software/ruby/$PATH
  • 那不是一个有效的路径。试试 /usr/bin/local:/Users/administrator/Software/ruby:$PATH
  • 仍然面临这个问题,在系统信息中我得到以下路径 /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/administrator /kiranm/software/apache-maven-3.0.5/bin:/Users/administrator/Software/ruby/bin:/Users/administrator/Software/ruby/bin
猜你喜欢
  • 1970-01-01
  • 2016-02-02
  • 2019-12-16
  • 1970-01-01
  • 1970-01-01
  • 2017-01-10
  • 2023-03-15
  • 2022-10-03
  • 2015-08-28
相关资源
最近更新 更多