Jekyll是一个静态网站生成工具。它允许用户使用HTML、Markdown或Textile来建立静态页面,然后通过模板引擎Liquid(Liquid Templating Engine)来运行.

原文链接:Setup Jekyll on Windows

目前,网上有许多Jekyll的安装方法,大都相似,为了方便更多准备学习Jekyll的人,特翻译如下:

共分为以下几个重要步骤

  • 安装 Ruby
  • 安装 DevKit
  • 安装 Jekyll
  • 安装 Pygments
    • 安装 Python
    • 安装 ‘Easy Install’
    • 安装 Pygments
  • 启动 Jekyll
  • 故障诊断

安装 Ruby

  1. 前往 http://rubyinstaller.org/downloads/

  2. 在 “RubyInstallers” 部分,选择某个版本点击下载。
    例如, Ruby 2.0.0-p451 (x64) 是适于64位 Windows 机器上的 Ruby 2.0.0 x64 安装包。

  3. 通过安装包安装

    • 最好保持默认的路径 C:\Ruby200-x64, 因为安装包明确提出 “请不要使用带有空格的文件夹 (如: Program Files)”。
    • 勾选 “Add Ruby executables to your PATH”,这样执行程序会被自动添加至 PATH 而避免不必要的头疼。

  4. 打开一个命令提示行并输入以下命令来检测 Ruby 是否成功安装。

    ruby -v

    输出示例:

    ruby 2.0.0p451 (2014-02-24) [x64-mingw32]

安装 DevKit

DevKit 是一个在 Windows 上帮助简化安装及使用 Ruby C/C++ 扩展如 RDiscount 和 RedCloth 的工具箱。 详细的安装指南可以在程序的wiki 页面 阅读。

  1. 再次前往 http://rubyinstaller.org/downloads/

  2. 下载同系统及 Ruby 版本相对应的 DevKit 安装包。 例如,DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe 适用于64位 Windows 系统上的 Ruby 2.0.0 x64。

    下面列出了如何选择正确的 DevKit 版本:

    Ruby 1.8.6 to 1.9.3: DevKit tdm-32-4.5.2
    Ruby 2.0.0: DevKit mingw64-32-4.7.2
    Ruby 2.0.0 x64: DevKit mingw64-64-4.7.2

  3. 运行安装包并解压缩至某文件夹,如 C:\DevKit

  4. 通过初始化来创建 config.yml 文件。在命令行窗口内,输入下列命令:

    cd “C:\DevKit”
    ruby dk.rb init
    notepad config.yml

  5. 在打开的记事本窗口中,于末尾添加新的一行 - C:\Ruby200-x64,保存文件并退出。

  6. 回到命令行窗口内,审查(非必须)并安装。

    ruby dk.rb review
    ruby dk.rb install

安装 Jekyll

  1. 确保 gem 已经正确安装

    gem -v

    输出示例:

    2.0.14

  2. 安装 Jekyll gem

    gem install jekyll

安装 Pygments

Jekyll 里默认的语法高亮插件是 Pygments。 它需要安装 Python 并在网站的配置文件_config.yml 里将highlighter 的值设置为pygments

不久之前,Jekyll 还添加另一个高亮引擎名为 Rouge, 尽管暂时不如 Pygments 支持那么多的语言,但它是原生 Ruby 程序,而不需要使用 Python。 更多信息请点此关注。

安装 Python

  1. 前往 http://www.python.org/download/
  2. 下载合适的 Python windows 安装包,如 Python 2.7.6 Windows Installer。 请注意,Python 2 可能会更合适,因为暂时 Python 3 可能不会正常工作。
  3. 安装
  4. 添加安装路径 (如: C:\Python27) 至 PATH。(如何操作? 请参见 故障诊断 #1)
  5. 检验 Python 安装是否成功

    python –V

    输出示例:

    Python 2.7.6

安装 ‘Easy Install’

  1. 浏览 https://pypi.python.org/pypi/setuptools#installation-instructions 来查看详细的安装指南。
  2. 对于 Windows 7 的机器,下载 ez_setup.py 并保存,例如,至C:\。 然后从命令行使用 Python 运行此文件:

    python “C:\ez_setup.py”

  3. 添加 ‘Python Scripts’ 路径 (如: C:\Python27\Scripts) 至 PATH

安装 Pygments

  1. 确保 easy_install 已经正确安装

    easy_install --version

    输出示例:

    setuptools 3.1

  2. 使用 “easy_install” 来安装 Pygments

    easy_install Pygments

启动 Jekyll

按照官方的 Jekyll 快速开始手册 的步骤, 一个新的 Jekyll 博客可以被建立并在localhost:4000浏览。

jekyll new myblog
cd myblog
jekyll serve

故障诊断

  1. 错误信息:

    “python” is not recognized as an internal or external command, operable program or batch file.

    其他情况: 这里的 “python” 也可能是 “ruby”, “gem” 或是 “easy_install” 等。

    可能原因: 该程序可能未被正确地安装或未在 PATH 里设置成功。

    尝试解法: 确保程序已被正确安装。然后手动将其添加至 PATH,请参考如下步骤[1]

    1. 按住 Win 键再按下 Pause
    2. 点击 Advanced System Settings
    3. 点击 Environment Variables
    4. 将 ;C:\python27 添加至 Path 变量的末尾
    5. 重启命令行
  2. 错误信息:

    ERROR:  Error installing jekyll:
    ERROR: Failed to build gem native extension. "C:/Program Files/Ruby/Ruby200-x64/bin/ruby.exe" extconf.rb creating Makefile
    make generating stemmer-x64-mingw32.def
    compiling porter.c
    ...
    make install
    /usr/bin/install -c -m 0755 stemmer.so C:/Program Files/Ruby/Ruby200-x64/lib/ruby/gems/2.0.0/gems/fast-stemmer-1.0.2/li
    /usr/bin/install: target `Files/Ruby/Ruby200-x64/lib/ruby/gems/2.0.0/gems/fast-stemmer-1.0.2/lib' is not a directory
    make: *** [install-so] Error 1

    可能原因: Ruby 被安装在含有空格的路径里。

    尝试解法: 重新安装 Ruby,这次请不要使用带有空格的路径,或者请直接选择使用默认路径。

  3. 错误信息:

    Generating... Liquid Exception: No such file or directory - python c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/pygments.rb-0.4.2/lib/pygments/mentos.py in 2013-04-22-yizeng-hello-world.md

    可能原因: Pygments 未能被正确安装或是 PATH 设置尚未生效。

    尝试解法: 首先请确保 Pygments 已成功安装且 Python 的 PATH 设置正确未包含空格和最后多余的斜杠。 然后重启命令行。如果依旧失败,请尝试注销并重新登录 Windows。 甚至使用终极解法,重启电脑。

  4. 错误信息:

    Generating... Liquid Exception: No such file or directory - /bin/sh in _posts/2013-04-22-yizeng-hello-world.md

    可能原因: 与 pygments.rb 0.5.1/0.5.2 版本的兼容性问题。

    尝试解法: 将 pygments.rb gem 的版本从 0.5.1/0.5.2 降至 0.5.0。

    gem uninstall pygments.rb –version ‘=0.5.2’
    gem install pygments.rb –version 0.5.0

  5. 错误信息:

    c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/dependency.rb:296:in `to_specs': Could not find 'pygments.rb' (~> 0.4.2) - did find: [pygments.rb-0.5.0] (Gem::LoadError)
    from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/specification.rb:1196:in `block in activate_dependencies'
    from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/specification.rb:1185:in `each'
    from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/specification.rb:1185:in `activate_dependencies'
    from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/specification.rb:1167:in `activate'
    from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_gem.rb:48:in`gem'
    from c:/Ruby200-x64/bin/jekyll:22:in `<main>'`

    可能原因:如错误信息所述,找不到 pygments.rb 0.4.2,仅找到 pygments.rb 0.5.0。 (此问题出现于此文初稿时的 Jekyll 版本,现版本应已修复)

    尝试解法: 将 pygments.rb gem 的版本降级至 0.4.2

    gem uninstall pygments.rb –version “=0.5.0”
    gem install pygments.rb –version “=0.4.2”

  6. 错误信息:

    Generating... You are missing a library required for Markdown. Please run:
    $ [sudo] gem install rdiscount
    Conversion error: There was an error converting '_posts/2013-04-22-yizeng-hello-world.md/#excerpt'. ERROR: YOUR SITE COULD NOT BE BUILT:
    ------------------------------------
    Missing dependency: rdiscount

    可能原因: 依赖包 rdiscount 未找到。 此问题最有可能的原因是,网站使用的是 rdiscount 作为 Markdown 引擎,而不是 Jekyll 默认的引擎,故需要手动自行安装。

    尝试解法

    gem install rdiscount

  7. 错误信息:

    c:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- wdm (LoadError)
    from c:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/listen-1.3.1/lib/listen/adapter.rb:207:in `load_dependent_adapter'
    from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/listen-1.3.1/lib/listen/adapters/windows.rb:33:in `load_dependent_a
    dapter'
    ...

    可能原因: wdm gem 未被安装。因为 Jekyll 只官方地支持 *nix 系统,所以 Windows Directory Monitor 并没有作为依赖包而被自动安装。

    尝试解法

    gem install wdm

8.为了能够让这里网站正常运行,这里需要删除_post文件夹里的文件(应该有一个xxxx-xx-xx-welcome-to- jekyll.markdown字样的文件),因为这个文件内部使用了语法高亮插件(另外不删,则可以修改配置文件禁用该语法高亮插件,即修改根目录下 _config.yml中的pygments: true为false便可。),这个需要另外安装,不再本文范围内,不删会导致生成的静态页面有问题,因时间有限本文暂不提此问题。

Windows 上安装 Jekyll.的更多相关文章

  1. 在ubuntu on windows 上安装jekyll

    已知问题 安装ruby之后,重新启动ubuntu on windows,输入ruby命令,提示找不到. 发现的解决办法 执行下面命令 source /home/xxxx/.rvm/scripts/rv ...

  2. Windows上安装Jekyll

    Jekyll是什么 jekyll是一个简单的免费的Blog生成工具,是一个静态站点生成器, 它会根据网页源码生成静态文件.它提供了模板.变量.插件等功能,所以实际上可以用来编写整个网站.也可使用基于j ...

  3. 在 Windows 系统上安装 Jekyll

    目录 安装 Ruby 环境 用 Bundler 安装 Jekyll 本文是写给完全未用过 Ruby 乃至命令行工具者的.对于一般的开发者,Jekyll 官方文档的相关内容已然足够. 本文为钱院学辅技术 ...

  4. windows下安装jekyll

    jekyll在其官方网站上说并不建议在windows操作系统安装,可是我们已经在windows环境下操作比较习惯了,而安装linux或mac的成本又比较高.因此,虽然在windows安装jekyll的 ...

  5. 在Windows上安装Elasticsearch 5.0

    在windows上安装Elasticsearch Elasticsearch可以使用.zip软件包安装在Windows上. elasticsearch-service.bat命令,它将设置Elasti ...

  6. 在 Windows 上安装Rabbit MQ 指南

    rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.他遵循Mozilla Public License开源协议.采用 Erlang 实现的工业级的消息队列(MQ)服务器. Ra ...

  7. 在Windows上安装虚拟机详细图文教程

    用虚拟机来安装最新的软件,安装最新的系统等等比较保险,可以避免安装不顺利影响自己原来的系统和应用,想尝鲜又担心自己完全更换系统不适应的朋友可以尝试. 虚拟机下载:https://yunpan.cn/c ...

  8. 在windows上安装ASP.NET 5(译文)

    本文将介绍如何在windows上安装ASP.NET5,包括单独安装和通过Visual Studio 2015 安装. 本文包括: 通过Visual Studio安装ASP.NET 单独安装ASP.NE ...

  9. python环境搭建-在Windows上安装python3.5.2

    在Windows上安装Python3.5.2 首先,根据你的Windows版本(64位还是32位)从Python的官方网站下载Python 3.5.2对应的64位安装程序或32位安装程序(网速慢的同学 ...

随机推荐

  1. GreenDao 数据库:使用Raw文件夹下的数据库文件以及数据库升级

    一.使用Raw文件夹下的数据库文件 在使用GreenDao框架时,数据库和数据表都是根据生成的框架代码来自动创建的,从生成的DaoMaster中的OpenHelper类可以看出: public sta ...

  2. ASP.NET Core 之 Identity 入门(三)

    前言 在上一篇文章中,我们学习了 CookieAuthentication 中间件,本篇的话主要看一下 Identity 本身. 最早2005年 ASP.NET 2.0 的时候开始, Web 应用程序 ...

  3. django server之间通过remote user 相互调用

    首先,场景是这样的:存在两个django web应用,并且两个应用存在一定的联系.某些情况下彼此需要获取对方的数据. 但是我们的应用肯经都会有对应的鉴权机制.不会让人家随随便便就访问的对吧.好比上车要 ...

  4. solr_架构案例【京东站内搜索】(附程序源代码)

    注意事项:首先要保证部署solr服务的Tomcat容器和检索solr服务中数据的Tomcat容器,它们的端口号不能发生冲突,否则web程序是不可能运行起来的. 一:solr服务的端口号.我这里的sol ...

  5. x:bind不支持样式文件 或 此Xaml文件必须又代码隐藏类才能使用{x:Bind} 解决办法

    这两天学习UWP开发,发现一个很有趣的问题,就是我题目中的描述的. 我习惯了在ResourceDictionary中写样式文件,但是发现用x:Bind时会有问题 如果是写在Style里,则提示 “x: ...

  6. 【初学python】使用python调用monkey测试

    目前公司主要开发安卓平台的APP,平时测试经常需要使用monkey测试,所以尝试了下用python调用monkey,代码如下: import os apk = {'j': 'com.***.test1 ...

  7. HTML5新特性有哪些,你都知道吗

    一.画布(Canvas) 画布是网页中的一块区域,可所以用JavaScript在上面绘图.下面我们来创建一个画布并在上面绘制一个坦克(后面将用HTML5做一个坦克大战游戏),代码如下: <!DO ...

  8. 解决vs创建或打开C++浏览数据库文件*.sdf时发生错误的问题

    VS2012,  创建或打开C++浏览数据库文件*.sdf时发生错误. IntelliSense 和浏览信息将不能用于C++项目. 请确保已安装 Microsoft SQL Server Compac ...

  9. 【C#公共帮助类】 Utils 10年代码,最全的系统帮助类

    为大家分享一下个人的一个Utils系统帮助类,可能有些现在有新的技术替代,自行修改哈~ 这个帮助类主要包含:对象转换处理 .分割字符串.截取字符串.删除最后结尾的一个逗号. 删除最后结尾的指定字符后的 ...

  10. ntp

    一: 在一台可以连接外网的服务器A上配置ntp: 配置  /etc/ntp.conf  文件: server 202.120.2.101            # local clock (LCL) ...