我试图安装Github Pages'我的CentOS 7虚拟机上Slate theme,因此我可以使用bundle exec jekyll serve
命令在本地预览我的新站点。
我尽可能地遵循了指示。
minima
文件中将主题jekyll-theme-slate
更改为_config.yml
。gem "minima", "~> 2.0"
文件中将gem "github-pages", group: :jekyll_plugins
更改为Gemfile
。之后(由于这些是他们唯一的指示),我跑了bundle exec jekyll serve
,它告诉我我的宝石没有安装(duh),并建议运行bundle install
。
bundle install
,它告诉我依赖项的版本类型存在冲突,并建议bundle update
可能解决该问题。bundle update
。一些插件/功能实际上在这里还原了版本,但我现在在我的机器上安装了Slate主题,版本0.0.4
无论出于何种原因。之后,我又跑了bundle exec jekyll serve
。我收到了这个错误:
Configuration file: /home/peri/my-site/_config.yml
Configuration file: /home/peri/my-site/_config.yml
jekyll 3.4.3 | Error: Could not find a JavaScript runtime. See https://github.com/rails/execjs for a list of available runtimes.
在某种程度上,这种错误是有道理的。要使自定义主题起作用,我可能需要一个工具来运行他们的自定义脚本。但首先,我在主题的安装说明中注意到this extra section,它直接提到能够在本地预览具有该主题的网站。
.git
这些东西吗?script/bootstrap
文件,因为/usr/local
需要root并且使用sudo
并不知道任何名为gem
或bundle
的二进制文件。我将gem
和bundle
更改为各自的绝对路径,并在sudo ./script/bootstrap
内运行slate-master
。故事的重点是,当我运行home/peri/my-site
时,它对我的bundle exec jekyll serve
目录不起作用。据推测,这是因为他们打算将用户的网站整合到他们主题的源代码中?这似乎并不直观或正确。所以,我调查了ExecJS。
gem install execjs
gem "execjs", "2.7.0"
文件中添加了Gemfile
。得到与以前相同的错误。
我应该如何安装这个Jekyll主题?
答案 0 :(得分:1)
更改_config.yml
中的主题后,请按照以下步骤操作:
Gemfile
应该只包含以下内容:
source "https://rubygems.org"
gem "github-pages"
删除bundler current config:rm -r .bundle/
删除Gemfile.lock:rm Gemfile.lock
仅为此网站在隔离文件夹中安装本地依赖项:bundle install --path=vendor/bundle
您不会拥有post
和page
以及home
个主题,您需要在所有帖子中使用default
。
生成并运行服务器:bundle exec jekyll s