RubyGems是Ruby的包管理工具,与node.js中的npm相当,gem就如同Linux中的apt或yum,可以很方便的实现ruby中包的安装、升级以及发布等。
gem常见命令:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
基本用法: gem -h/--help #查看帮助 gem -v/--version #显示版本信息 gem command [arguments...] [options...] #基本命令格式 部分示例: gem install rake #安装rake gem list --local #显示本地安装的gem gem build package.gemspec #把package.gemspec编译成package.gem gem help install #显示install命令的帮助信息 更多帮助信息: gem help commands list all 'gem' commands gem help examples show some examples of usage gem help gem_dependencies gem dependencies file guide gem help platforms gem platforms guide gem help <COMMAND> show help on COMMAND (e.g. 'gem help install') gem server present a web page at http://localhost:8808/ with info about installed gems 常用命令: gem environment #查看gem的环境 gem help #查看帮助 gem source #显示gem源 gem sources -a url #添加源 gem sources -r url #删除源 gem update #更新所有包 gem update --system #更新RubyGems软件 gem install rake #安装rake,从本地或远程服务器 gem install rake --remote #安装rake,从远程服务器 gem install watir -v 1.6.2 #指定安装版本的 gem uninstall rake #卸载rake包 gem list d #列出本地以d打头的包 gem query -n ''[0-9]'' --local #查找本地含有数字的包 gem search log --both #从本地和远程服务器上查找含有log字符串的包 gem search log --remoter #只从远程服务器上查找含有log字符串的包 gem search -r log #只从远程服务器上查找含有log字符串的包 gem help install #查看install命令的帮助 gem help examples #列出gem命令使用一些例子 gem build rake.gemspec #把rake.gemspec编译成rake.gem gem check -v pkg/rake-0.4.0.gem #检测rake是否有效 gem cleanup #清除所有包旧版本,保留最新版本 gem contents rake #显示rake包中所包含的文件 gem dependency rails -v 0.10.1 #列出与rails相互依赖的包 |
gem镜像
官方镜像[https://rubygems.org/]经常被GFW屏蔽,国内可用的有:
- https://ruby.taobao.org/
- https://gems.ruby-china.org/
更换源的办法:
1 2 3 4 |
gem sources --remove https://rubygems.org/ gem sources -a http://ruby.taobao.org/ gem sources -l |
若显示:
1 2 3 4 |
*** CURRENT SOURCES *** http://ruby.taobao.org |
说明更新源成功。
SSL证书验证
有时在使用gem安装一些库时会出现一下提示:
1 2 |
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed |
这是SSL证书验证失败,解决办法如下:
1.下载证书。在 http://curl.haxx.se/docs/caextract.html 下载cacert.pem。
2.将证书放在合适的位置。一般是ruby或者rails安装地方的根目录下,如:C:\Ruby22-x64\cacert.pem。
3.设置环境变量,在命令行(cmd)里,输入 set SSL_CERT_FILE=C:\Ruby22-x64\cacert.pem,这只是临时的环境变量。如果要设置非临时的环境变量,在高级系统设置中新建系统变量SSL_CERT_FILE,其值为cacert.pem文件的路径。
此时再使用gem就不会报错了。