Jekyll编译错误

时间:2015-01-11 14:46:36

标签: ruby compilation sass jekyll

一旦我在终端

中启动以下命令,Jekyll似乎似乎没有编译我的CSS
jekyll serve --watch

这给我留下了没有应用样式的页面,只有普通的旧标记

下面是位于_site目录中的css图像(注意没有编译过的css)

enter image description here

保存main.scss文件后,编译就会进行,编译我的css并在浏览器中快速刷新应用样式。一旦我在我的项目中关闭Jekyll服务器,这不应该立即发生吗?

enter image description here

版本

 ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-darwin13.0.0]
 jekyll 2.5.2

配置文件

 # Site settings
 title: example
 email: your-email@domain.com
 description: > # this means to ignore newlines until "baseurl:"
 url: "http://yourdomain.com" # the base hostname & protocol for your site

 # Build settings
 markdown: kramdown

 sass:
  sass_dir: assets/css
  style: :nested

1 个答案:

答案 0 :(得分:0)

我在主分支中看到的是样式表的链接/assets/css/main.css。在http://ssosina.github.io/sosina.me/处为您提供存储库此解析为指向http://ssosina.github.io/assets/css/main.css目标错误的链接。

我看到您已将其更改为assets/css/main.css。这适用于您网站根目录的网页,但不适用于文件夹中的帖子或网页。

例如:http://ssosina.github.io/sosina.me/about/index.html会将此链接指向http://ssosina.github.io/sosina.me/about/assets/css/main.css再次错过目标。

明确的解决方案是在baseurl: "/sosina.me"中使用_config.yml并构建您的链接:

<link rel="stylesheet" href="{{ site.baseurl }}/assets/css/main.css" />

这将始终指向您在任何页面上相对于域根的css。

修改:设置baseurl变量后,jekyll serve命令会相应地为您的网站提供服务。在您的情况下,命令将输出

Server address: http://127.0.0.1:4000/sosina.me/