升级Mac OS后无法使用Jekyll
问题
升级系统以后总是会出现各种各样的问题,包括速度变慢,包括有的软件不能继续使用。
这不,对Mac OS来了一次大升级,结果原来的Jekyll不能用了,原因包括新的 Mac OS 取消了一些文件夹的读写权限,以及某些依赖关系的改变。
可选的解决方案
-
sudo gem install -n /usr/local/bin jekyll bundle
-
清空Gemfile.lock
-
修改Gemfile里面的jekyll版本号
大致步骤是这样。接下来运行 jekyll s
以后,会出现一些警告
WARN: Unresolved specs during Gem::Specification.reset:
listen (< 3.1, ~> 3.0)
rb-fsevent (>= 0.9.4, ~> 0.9)
rb-inotify (>= 0.9.7, ~> 0.9)
WARN: Clearing out unresolved specs.
Please report a bug if this causes problems.
/usr/local/lib/ruby/gems/2.4.0/gems/bundler-1.15.4/lib/bundler/runtime.rb:317:in `check_for_activated_spec!': You have already activated sass 3.5.1, but your Gemfile requires sass 3.4.22. Prepending `bundle exec` to your command may solve this. (Gem::LoadError)
from /usr/local/lib/ruby/gems/2.4.0/gems/bundler-1.15.4/lib/bundler/runtime.rb:32:in `block in setup'
from /usr/local/Cellar/ruby/2.4.1_1/lib/ruby/2.4.0/forwardable.rb:229:in `each'
from /usr/local/Cellar/ruby/2.4.1_1/lib/ruby/2.4.0/forwardable.rb:229:in `each'
from /usr/local/lib/ruby/gems/2.4.0/gems/bundler-1.15.4/lib/bundler/runtime.rb:27:in `map'
from /usr/local/lib/ruby/gems/2.4.0/gems/bundler-1.15.4/lib/bundler/runtime.rb:27:in `setup'
from /usr/local/lib/ruby/gems/2.4.0/gems/bundler-1.15.4/lib/bundler.rb:101:in `setup'
from /usr/local/lib/ruby/gems/2.4.0/gems/jekyll-3.3.0/lib/jekyll/plugin_manager.rb:36:in `require_from_bundler'
from /usr/local/lib/ruby/gems/2.4.0/gems/jekyll-3.3.0/exe/jekyll:9:in `<top (required)>'
from /usr/local/bin/jekyll:22:in `load'
from /usr/local/bin/jekyll:22:in `<main>'
大概意思是说,原来的一些转换规则过时了,现在使用了新的规则,并且如果用 git status 查看一下文件内容的话,发现 _site/ 中生成的本地预览文件全部被修改了。满屏的警告信息,我还以为跑飞了。。
其他
-
或者干脆不要Jekyll了,每次直接推 _post 就可以了,只是少了本地预览。GitHub会完成剩下的工作。
-
Liquid 语法升级了,可能需要修改 commentit 的模板。我是把下面这一行的小括号去掉就好了。
assign sorted_comments = (page.comments | sort: 'date')
本文地址:https://jjayyyyyyy.github.io/2017/09/03/jekyll_in_sierra.html
(END)