題記:前不久在windows下配置jekyll環境時,須要用到gem,一個ruby的管理包,相似於管理nodejs包的npm。安裝ruby環境後,使用gem安裝包時請求國外的[https://rubygems.org/]鏡像一直連不上或間歇性鏈接失敗,以後換成淘寶的RubyGems鏡像後,啪啦啪啦地就完事了...node
上面說到,使用gem請求rubygems.org資源時會遇到長時間沒法響應的問題,解決辦法就是使用淘寶的RubyGems鏡像,它是一個完整rubygems.org鏡像,而且每隔大概10分鐘會同步一次官方的鏡像,保證同步成功和服務。鏡像地址請訪問:RubyGems,裏面有使用的步驟。npm
網上的教程大多比較舊或是不太完善,出現了問題又沒有相關解決方案,下面來講說個人安裝步驟:ubuntu
1.從rubyinstaller地址下載RubyInstaller和DevKit,注意它們對應的版本,以下圖所示:windows
2.安裝Ruby,推薦安裝在系統盤,添加到用戶環境變量,以下圖所示:ruby
3.解壓DevKit包到系統盤C:\DevKit,打開命令行,進入該目錄,而後執行如下命令:markdown
$ ruby dk.rb init $ ruby dk.rb install
4.修改下載鏡像,刪除rubygems.org源,添加淘寶RubyGems鏡像,查看source和更新source cache:post
$ gem sources --remove https://rubygems.org/ $ gem sources -a http://ruby.taobao.org/ $ gem sources -l $ gem sources -u
5.安裝jekyll包:spa
$ gem install jekyll
6.安裝Python並配置用戶環境變量和scripts下的easy_install Path,推薦下載Python2.7版本,以下圖所示:命令行
7.安裝pygments語法高亮包,不要安裝到最新版:code
$ 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下安裝就簡單多了,不用考慮不少啥Python,C++,Ruby等的安裝配置問題,執行如下命令便可:
$ sudo apt-get install ruby $ sudo apt-get install rubygems $ sudo gem install jekyll $ sudo gem install rdiscount
同理,在使用npm管理一些包時,也會發生一些長時間沒法獲取源的狀況。若是使用淘寶的鏡像cnpmjs.org,速度立刻提高n倍,模塊同步頻率大概也是10分鐘一次,以保證儘可能與官方npmjs.org鏡像同步。使用起來也很是方便,而且經過alias方式安裝後也可使用原來的npm方式管理包,使用教程地址:cnpm,利用cnpm也能夠搭建我的私有倉庫。
很喜歡用markdown寫博客,像寫代碼同樣,附上jekyll的教程:jekyll,淘寶的鏡像服務真的挺好的,技術也很牛逼,文筆比較差,不知道說什麼了,不知不覺夜深了,該睡覺了,=_=~
念念不忘,必有迴響!