淘宝RubyGems和NPM镜像的使用
题记:前不久在windows下配置jekyll环境时,需要用到gem,一个ruby的管理包,类似于管理nodejs包的npm。安装ruby环境后,使用gem安装包时请求国外的[https://rubygems.org/]镜像一直连不上或间歇性连接失败,之后换成淘宝的RubyGems镜像后,啪啦啪啦地就完事了...

Section One
上面说到,使用gem请求rubygems.org资源时会遇到长时间无法响应的问题,解决办法就是使用淘宝的RubyGems镜像,它是一个完整rubygems.org镜像,并且每隔大概10分钟会同步一次官方的镜像,保证同步成功和服务。镜像地址请访问:RubyGems,里面有使用的步骤。
jekyll安装
网上的教程大多比较旧或是不太完善,出现了问题又没有相关解决方案,下面来说说我的安装步骤:
window下安装
1.从rubyinstaller地址下载RubyInstaller和DevKit,注意它们对应的版本,如下图所示:

2.安装Ruby,推荐安装在系统盘,添加到用户环境变量,如下图所示:

3.解压DevKit包到系统盘C:\DevKit,打开命令行,进入该目录,然后执行以下命令:
$ ruby dk.rb init
$ ruby dk.rb install
4.修改下载镜像,删除rubygems.org源,添加淘宝RubyGems镜像,查看source和更新source cache:
$ gem sources --remove https://rubygems.org/
$ gem sources -a http://ruby.taobao.org/
$ gem sources -l
$ gem sources -u
5.安装jekyll包:
$ gem install jekyll
6.安装Python并配置用户环境变量和scripts下的easy_install Path,推荐下载Python2.7版本,如下图所示:

7.安装pygments语法高亮包,不要安装到最新版:
$ gem install pygments.rb --version "=0.5.0"
7.如果你不想使用jekyll原生pygments语法高亮,你可以安装rouge包,推荐使用pygments,生成jekyll项目后的_config.yml配置文件加入highlighter: pygments,旧版本是pygments: true:
$ gem install rouge
8.安装解析markdown的包:
$ gem install rdiscount
9.安装wdm(Windows Directory Monitor):
$ gem install wdm
10.查看已安装的gem:
$ gem list
11.卸载gem包: $ gem uninstall gem-name
我的gem包安装目录:C:\Ruby193\lib\ruby\gems\1.9.1\gems,在这个目录下,你可以看到通过上面命令安装的一些包,一些是jekyll的依赖包。另外可能出现的错误:C:/Ruby193/lib/ruby/gems/1.9.1/gems/posix-spawn-0.3.9/lib/posix/spawn.rb:164: warning: cannot close fd before spawn 'which' 不是内部或外部命令,也不是可运行的程序或批处理文件。解决办法(安装pygments前注意版本,安装后再重装会导致依赖包出错): $ gem install pygments.rb --version "=0.5.0" gem uninstall pygments.rb --version "=0.5.2"
ubuntu下安装
ubuntu下安装就简单多了,不用考虑很多啥Python,C++,Ruby等的安装配置问题,执行以下命令即可:
$ sudo apt-get install ruby
$ sudo apt-get install rubygems
$ sudo gem install jekyll
$ sudo gem install rdiscount
Section Two
同理,在使用npm管理一些包时,也会发生一些长时间无法获取源的情况。如果使用淘宝的镜像cnpmjs.org,速度马上提升n倍,模块同步频率大概也是10分钟一次,以保证尽量与官方npmjs.org镜像同步。使用起来也非常方便,并且通过alias方式安装后也可以使用原来的npm方式管理包,使用教程地址:cnpm,利用cnpm也可以搭建个人私有仓库。
Last
很喜欢用markdown写博客,像写代码一样,附上jekyll的教程:jekyll,淘宝的镜像服务真的挺好的,技术也很牛逼,文笔比较差,不知道说什么了,不知不觉夜深了,该睡觉了,=_=~
念念不忘,必有回响!
淘宝RubyGems和NPM镜像的使用的更多相关文章
- CentOS安装node.js-8.11.1+替换淘宝NPM镜像
注:以下所有操作均在CentOS 6.8 x86_64位系统下完成. #准备工作# 由于node.js-8.11.1在源码编译安装的时候需要gcc 4.9.4或clang++ 3.4.2以上版本的支持 ...
- npm更换成淘宝镜像源以及cnpm
1.需求由来 由于node安装插件是从国外服务器下载,受网络影响大,速度慢且可能出现异常.所以如果npm的服务器在中国就好了,所以我们乐于分享的淘宝团队(阿里巴巴旗下业务阿里云)干了这事.来自官网:“ ...
- npm 淘宝镜像与官方源 切换
1.临时使用 npm --registry https://registry.npm.taobao.org install 包名 2.永久设置为淘宝镜像 npm config set registry ...
- npm i node-sass 报错&npm 镜像切换
npm install --save node-sass --registry=https://registry.npm.taobao.org --disturl=https://npm.taobao ...
- 摆脱npm的网络问题: 淘宝npm镜像
在使用npm install的时候, 经常会因为网络问题, 各种安装不顺利, 一个字'烦躁'. 自从遇上淘宝npm之后,执行cnpm install之后, 怎一个'快'字了得. 闲话不多说, 直接上干 ...
- npm淘宝镜像
前端开发会用到npm的包,但是国外的速度有时候很慢,幸运的是,淘宝做了镜像,一起来看看吧. https://npm.taobao.org/
- npm 国内淘宝镜像cnpm
某些插件很奇怪,需要用国内的镜像下载才可以 #安装淘宝镜像npm install cnpm -g --registry=https://registry.npm.taobao.org #使用淘宝镜像下 ...
- 淘宝的ruby镜像已无人维护,使用ruby-china的RubyGems镜像
淘宝的镜像已经无人维护了,参考 https://ruby-china.org/topics/29250 https://gems.ruby-china.org/ 使用新的镜像 $ gem source ...
- 修改npm包管理器的registry为淘宝镜像(npm.taobao.org)
起因 安装了node,安装了npm之后,官方的源实在是 太慢了! 看了看淘宝的npm镜像, http://npm.taobao.org/ 竟然说让我再下载一个cnpm,要不然就每次都得install ...
随机推荐
- win7 bat copy 一个文件 到另外的文件夹内,路径得用引号哦
win 7 的 用引号 把路径引起来 ,但是win10 的可以不用哦 !
- 解读JavaScript中的Hoisting机制(js变量声明提升机制)
hoisting机制:javascript的变量声明具有hoisting机制,JavaScript引擎在执行的时候,会把所有变量的声明都提升到当前作用域的最前面. 知识点一:javascript是没有 ...
- [HAOI2007]上升序列(最长上升子序列)
题目描述 对于一个给定的 S=\{a_1,a_2,a_3,…,a_n\}S={a1,a2,a3,…,an} ,若有 P=\{a_{x_1},a_{x_2},a_{x_3},…,a_{x_m}\ ...
- windows平台下获取网卡MAC地址、硬盘序列号、主板序列号、CPU ID、BIOS序列号
转自http://blog.csdn.net/jhqin/article/details/5548656,如有侵权,请联系本人删除,谢谢!! 头文件:WMI_DeviceQuery.h /* ---- ...
- 快速玩转linux(2)
ssh是什么 SSH:secure shell 安全外壳协议 建立在应用层基础上的安全协议 可靠, 专为远程登录会话和其他网络服务提供安全性的协议. mark 客户端服务端都基本支持全平台 服务器 ...
- QQ群排名霸屏技术居然是这样简单
最近做了一些收费的QQ群,收多少钱,一块钱的入门费,也就是说进入我的QQ群必须要1块钱的会费. 我的QQ群主要是干嘛呢,放些电影,比如说市面上电影院,正在播放的,最新最热门的,火爆的一些电影. 先前呢 ...
- 关于api接口
前阵子一直疯狂的找关于php的api接口方面的资料来学习,总结了一下,无非就是请求数据,然后返回数据,当然也要设置相关安全措施,比如认证口令 等.返回数据格式是json 还是xml 看自己需求咯
- python3 练习题100例 (二十七)列表元素改写
题目内容: 输入一个列表alist,要求列表中的每个元素都为正整数且不超过10: 将列表中的奇数变为它的平方,偶数除以2后打印新的列表(新的列表中所有元素仍都为整数). 可以使用以下实现列表alist ...
- C语言结构体的学习,以及gdb的调式
#include <stdio.h> #include <string.h> #define format "%d\n%s\n%f\n%f\n%f\n" t ...
- C 二维指针难点详解。
关于 指向二维数组的指针. int a[2][3]; int *p; int (*p_1)[3]; 可以用p_1 = a ,但是不能用p = a : 因为此时数组a的数据类型是 int (* ...