本地jekyll安装

在本地搭建jekyll遇到的一些问题

Posted by 梦影无痕 on February 20, 2018

前言

刚开始接触jekyll,是利用github上别人的项目fork过来的,里面有很多东西需要改动,每次改动都要commit上去,就很费事,就想着自己在本地搭建Jekyll运行环境,参考的是简书上的一篇博客。

因为在搭建过程中遇到了一些问题,借此记录下来。

搭建步骤

1、安装Ruby

Windows下直接下载安装exe,地址:http://rubyinstaller.org/downloads/。

这里就遇到一个坑了,网站上提供了多种版本的Ruby,本人最开始选择了最新版下载,然后后面安装jekyll就遇到问题,后来改用2.2.6版本成功安装,具体原因后续再说。

安装时,记得勾选自动添加到系统路径,利用

ruby -v

显示版本号,表示安装完成,若报错,检查系统路径对不对。

2、安装Devkit

devkit的下载地址就在ruby下面。这里注意,提供的devkit是适用于Ruby2.0到2.3版本。所以一定要选好Ruby版本,不能太新,否则在后续安装jekyll会出现 make 命令找不到的错误。

因为也是不知道devkit的作用,后面在编译时就遇到问题了,在这里把他的用处贴出来:

DevKit 是windows平台下编译和使用本地C/C++扩展包的工具。它就是用来模拟Linux平台下的make, gcc, sh来进行编译。对,他就是一个编译器

选择任意位置安装即可,只要自己能找到。

安装完成后打开所在目录,在该文件夹下面使用 shift+右键 打开菜单选择 在此处打开powershell窗口,或者点击左上角文件选项也可打开powershell。 运行

ruby dk.rb init

出现如下结果,表示安装完成

在devkit下面找到生成的 config.yml 文件,利用记事本打开,在最后一行加上 - Ruby 所在目录,如下图所示。

使用命令

ruby dk.rb review
ruby dk.rb install

完成安装。

3、安装jekyll

gem install jekyll

使用命令 jekyll -v

检查是否安装完成。

最后运行 jekyll 项目。切换到博客所在的根目录,如果是 clone 的 github 模板,即是 GitHub 本地仓库文件夹。 运行

jekyll s  / jekyll serve

这里可能会报找不到 jekyll-paginate 的错误,没关系,使用命令

gem install jekyll-paginate

安装jekyll-paginate。再次运行,出现以下结果,表示运行成功

在浏览器地址栏输入 127.0.0.1:4000 访问。这里可能会存在浏览器兼容问题,切换其他浏览器试试。

无法打开md中文博客问题

原因是markdown文件使用了中文字符,Jekyll无法解析

修改 {ruby安装目录}\Ruby25-x64\lib\ruby\2.2.0\webrick\httpservlet 下filehandler.rb文件

在265行附近修改:

path = req.path_info.dup.force_encoding(Encoding.find("filesystem"))
path.force_encoding("UTF-8") #新加
if trailing_pathsep?(req.path_info)

在310行附近修改:

base.force_encoding("UTF-8") #新加
break unless File.directory?(File.expand_path(res.filename + base)) 
shift_path_info(req, res, path_info)

gems configuration 报错

问题描述

Deprecation: The ‘gems’ configuration option has been renamed to ‘plugins’. Please update your config file accordingly.

原因是配置文件 _config.ym l中,使用了 plugins 的配置项, 打开 _config.yml 文件,用 plugins 替换掉 gems。