一 问题一 pod [!] Unknown command: `package`
1.1 如果没有安装过cocoapods-packager,安装cocoapods-packager,sudo gem install cocoapods-packager
1.2 如果已经安装cocoapods-packager,还是出现上面的错误,有可能是pod的安装方式不是采用gem来安装,导致引用路径不一致,或者ruby环境不一致。
1.2.1 解决方法:卸载cocoapods
1、在终端中,输入which pod
回车查看pod的地址 (比如:/usr/local/bin/pod)
2、sudo rm -rf +地址
如(/usr/local/bin)
3、cd /usr/local/bin
进入pod的位置gem list
查看gems的程序包
4、输入命令 sudo gem uninstall cocoapods -v 1.2.1
回车
输入命令:sudo gem uninstall cocoapods-core -v 1.2.1
回车
5、输入命令:pod
查看是否成功删除
1.2.2 安装Cocoapods
意思就是在现有的源不能用了,这里我用的是https://ruby.taobao.org/
所以得换源,如提示中ruby-china.org
1、$ gem sources -l
查看源
先移除现有的源
gem sources --remove https://ruby.taobao.org/
使用新的源
$ gem sources -a https://gems.ruby-china.com
再次gem sources -l
查看源,出现下面的样子表示成功
*** CURRENT SOURCES ***
https://gems.ruby-china.com
2、安装CocoaPods
安装方法有多种,根据自身情况而定
1.首先下载:
sudo gem install cocoapods
3、看看是否安装成功
pod --version
出现pod版本号说明已经成功
如果显示-bash: po: command not found
,说明没有装好
1.3安装最新的ruby 使用 rvm安装ruby
1.3.1 使用下面命令查看ruby版本
rvm list known
1.3.2 然后安装
rvm install 2.0.0
1.3.3 查看ruby版本
ruby -v
系统默认使用ruby版本
rvm 2.6.2 default
1.3.4 更改ruby环境配置
移除原有的默认源
gem source -r https://rubygems.org/
添加国内镜像
sudo gem sources --a https://gems.ruby-china.com
要想验证是否替换成功了,可以执行:
$ gem sources -l
正常的输出结果:
CURRENT SOURCES
1.4 重新安装cocoapods和cocoapods-packager
重新安装cocoapods,sudo gem install cocoapods
重新安装cocoapods-packager, sudo gem install cocoapods-packager
二 jenkins执行shell命令时,提示"Command not found"处理方法
本机shell命令可以执行,jenkins任务中无法执行,则是jenkins没有加载/etc/profile导致,需要在jenkins调用shell脚本的最前面加一行脚本,
#!/bin/bash -ilex
,可以通过-i参数和-l参数让bash为login shell and interactive shell,就可以读取/etc/profile和~/.bash_profile等文件
三 Jenkins使用脚本执行pod命令结果报错pod: command not found
出现这个问题可能是因为你没有设置pod的运行路径,解决方法如下
第一步:打开Jenkins,然后在Jenkins左侧的菜单中找到 系统管理 --->系统设置 --->全局属性 ,然后找到Environment variables(中文:环境变量)并且勾选。
第二步:打开你的终端,在终端中输入
echo $PATH
,终端会打印出一串字符串,几个路径,复制该路径,返回到Jenkins中第三步:会让填写一个键值对,键默认填写
PATH
,值填写你从终端复制的那个字符串,点击保存,完成,构建该项目
四 出现错误export LANG=en_US.UTF-8
java
cd /Users/用户/.jenkins/workspace/打包的项目/
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
pod install
pod update --verbose --no-repo-update