Github上的Jekyll突然因为'nil'日期而无法工作

时间:2017-07-16 04:14:08

标签: github jekyll github-pages

好吧,我发誓我根本没有改变任何设置。

我设置了我的Jekyll博客,之前它确实有效。

每次我想写新内容时,我只需复制旧帖子文件,将其重命名为当前日期并修改其中的内容。

但是仅仅一天,在我将新内容推送到Github之后,我收到了一封电子邮件,注意到我

  

master分支的页面构建失败,并出现以下错误:
  值'nil'被传递给与日期相关的过滤器,该过滤器需要/_layouts/post.html或其中一个布局中的有效日期。有关详细信息,请参阅https://help.github.com/articles/page-build-failed-date-is-not-a-valid-datetime/   有关Jekyll故障排除的信息,请参阅:
  https://help.github.com/articles/troubleshooting-jekyll-builds

首先,我没有修改/_layouts/post.html。其次,我不在YAML中使用日期信息,因为Jekyll已经使用强名称要求,如YY-MM-DD-title.md。

我只是一个想写一些有趣但却对IT技术知之甚少的人。我搜索了Jekyll文档,并阅读StackOverflow上的帖子,如下所示:

  

Invalid date while building on Github Pages

但由于我的post.html文件内容与该帖子不同,我不知道我能做些什么。

我使用bundle exec Jekyll build在我的Mac上构建它,它只显示与电子邮件相同的信息

  

$ bundle exec jekyll build   配置文件:> /Users/zhanglidong/Documents/ASyncFiles/jetorz.github.io/_config.yml               资料来源:/Users/zhanglidong/Documents/ASyncFiles/jetorz.github.io          目的地:> /Users/zhanglidong/Documents/ASyncFiles/jetorz.github.io/_site    增量构建:已禁用。启用--incremental
        生成...
    Liquid Exception:无效日期:'nil'不是有效的日期时间。在/_layouts/post.html中                错误:您的网站可能无法建立:
                      ------------------------------------
                      无效日期:'nil'不是有效的日期时间。

我的GitHub回购:https://github.com/jetorz/jetorz.github.io

我的jekyll博客:https://jetorz.github.io/

我该如何解决?有谁想帮我怜悯我? :(

1 个答案:

答案 0 :(得分:0)

像上面提到的回答一样,

我重新检查了我提供的链接:

  

Invalid date while building on Github Pages

if部分之外有<time>块。

我对Liquid不太了解,

但我认为值得尝试。

所以我将此if添加到我的post.html,如下所示

{% if page.date %}
        <time datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">
          {% assign date_format = site.minima.date_format | default: "%b %-d, %Y" %}
          {{ page.date | date: date_format }}
        </time>
{% endif %}

我不确切知道它是什么,

但确实有效:)

现在我可以发布我的博客了。