题记:前不久在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镜像的使用的更多相关文章

  1. 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以上版本的支持 ...

  2. npm更换成淘宝镜像源以及cnpm

    1.需求由来 由于node安装插件是从国外服务器下载,受网络影响大,速度慢且可能出现异常.所以如果npm的服务器在中国就好了,所以我们乐于分享的淘宝团队(阿里巴巴旗下业务阿里云)干了这事.来自官网:“ ...

  3. npm 淘宝镜像与官方源 切换

    1.临时使用 npm --registry https://registry.npm.taobao.org install 包名 2.永久设置为淘宝镜像 npm config set registry ...

  4. npm i node-sass 报错&npm 镜像切换

    npm install --save node-sass --registry=https://registry.npm.taobao.org --disturl=https://npm.taobao ...

  5. 摆脱npm的网络问题: 淘宝npm镜像

    在使用npm install的时候, 经常会因为网络问题, 各种安装不顺利, 一个字'烦躁'. 自从遇上淘宝npm之后,执行cnpm install之后, 怎一个'快'字了得. 闲话不多说, 直接上干 ...

  6. npm淘宝镜像

    前端开发会用到npm的包,但是国外的速度有时候很慢,幸运的是,淘宝做了镜像,一起来看看吧. https://npm.taobao.org/

  7. npm 国内淘宝镜像cnpm

    某些插件很奇怪,需要用国内的镜像下载才可以 #安装淘宝镜像npm install cnpm -g --registry=https://registry.npm.taobao.org #使用淘宝镜像下 ...

  8. 淘宝的ruby镜像已无人维护,使用ruby-china的RubyGems镜像

    淘宝的镜像已经无人维护了,参考 https://ruby-china.org/topics/29250 https://gems.ruby-china.org/ 使用新的镜像 $ gem source ...

  9. 修改npm包管理器的registry为淘宝镜像(npm.taobao.org)

    起因 安装了node,安装了npm之后,官方的源实在是 太慢了! 看了看淘宝的npm镜像, http://npm.taobao.org/  竟然说让我再下载一个cnpm,要不然就每次都得install ...

随机推荐

  1. 【SQL】Oracle的交集、并集、差集

    假设有表tableA.tableB,他们都有字段id和name 交集:INTERSECT (适用于两个结果集) select a.id, a.name from tableA a INTERSECT ...

  2. js省市区级联选择联动

    <!DOCTYPE html> <html lang="zh-cn"> <head> <meta http-equiv="Con ...

  3. ABAP术语-Customer Exit

    Customer Exit 原文:http://www.cnblogs.com/qiangsheng/archive/2008/01/19/1045231.html Pre-planned enhan ...

  4. python 面向对象类与类之间的关系

    主要内容: 1. 依赖关系 2. 关联关系, 组合关系, 聚合关系 3. 继承关系 4. 类中的特殊成员 引子 大千世界, 万物之间皆有规则和规律,我们的类和对象是对大千世界中的所有事物进行归类. 那 ...

  5. js onsubmit和return false的关系

    一直以来,我都是以为onsubmit=“return false”就不会进行提交,但经过项目之后才知道return false只是避免了之后的跳转,但onsubmit已经是正在进行了,故onsubmi ...

  6. node Cookie

    代码: const express = require('express'); const cookieParser = require('cookie-parser'); const app = e ...

  7. Python3爬虫(十三) 爬取动态页之Selenium

    Infi-chu: http://www.cnblogs.com/Infi-chu/ Python提供了很多模拟浏览器运行的库,比如:Selenium.Splash等 1.常用的引用 from sel ...

  8. Spring MVC怎么统一异常管理?

    1. 在类上加上@ControllerAdvice注解 2. 在方法上加上@ExceptionHandler注解 @ExceptionHandler(Exception.class) @Respons ...

  9. java入门---windows和Linux,UNIX,Solaris,FreeBSD下开发环境配置

        首先来看Windows下的操作.我们需要下载java开发工具包JDK.下载地址:http://www.oracle.com/technetwork/java/javase/downloads/ ...

  10. Hue 工具使用

    Hue 是一个 Web 接口的 Hadoop 分析数据工具,由 Cloudra 公司开源 官方网址 Github 地址 -> 安装方法 文档地址 一.Build 1.ubuntu安装所需环境(以 ...