Jekyll不处理服务器上的插件

Jekyll正在我的本地机器上处理我的_plugins文件夹(OS X 10.7.4,ruby 1.9.3),但它没有在服务器上处理它们(Ubuntu 12.04,ruby 1.9.3)。 两者都安装了相同版本的Jekyll(0.11.2)。

我试图在这里使用generate_sitemap插件。

我通过git和post-receive钩子部署,看起来像这样:

#!/bin/bash -l

GIT_REPO=/my_repo.git
TMP_GIT_CLONE=/my_temp_folder/
PUBLIC_WWW=/my_public_folder/

git clone $GIT_REPO $TMP_GIT_CLONE
jekyll --no-auto $TMP_GIT_CLONE $PUBLIC_WWW
rm -Rf $TMP_GIT_CLONE
exit

我在部署时看到这个错误:

remote: /home/ed/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': iconv will be deprecated in the future, use String#encode instead.

但是,从我读到的,这是一个Maruku警告,并与插件无关。

任何人有什么想法,我可以尝试解决这个问题? 我有点不知所措。


使用Jekyll很难调试,但它是一个很棒的工具!

我假设你在_plugins文件夹中有多个插件。

所以也许有一个或一些插件会导致问题。

如果我是对的,你可以做以下事情:

  • 杀死你的Jekyll
  • 在另一个位置创建插件的备份(不在_plugins文件夹中)。
  • 在_plugins文件夹中留下一个插件并启动Jekyll。
  • 如果有效,将另一个插件复制到_plugins文件夹中,直到找到失败Jekyll的插件。
  • 当你找到它时,你可以添加调试打印输出到有问题的插件(这就是我所做的)。

    就像: 把......放在“......之前”

    我只用Jekyll构建了http://www.cloudifysource.org/,您可以在我们的GitHub repo中找到并使用大量有用的示例:https://github.com/CloudifySource/cloudifysource.github.com


    我在Jekyll遇到同样的问题,在从post-receive钩子调用时不加载插件。

    正如在上面的评论中提到的那样,将当前工作目录更改为$TMP_GIT_CLONE诀窍。

    您不必在_config.yml中更改任何内容。

    #!/bin/bash -l
    
    GIT_REPO=/my_repo.git
    TMP_GIT_CLONE=/my_temp_folder/
    PUBLIC_WWW=/my_public_folder/
    
    git clone $GIT_REPO $TMP_GIT_CLONE
    cd $TMP_GIT_CLONE                             # move to the temp dir
    jekyll --no-auto $TMP_GIT_CLONE $PUBLIC_WWW
    cd                                            # move back to allow deletion
    rm -Rf $TMP_GIT_CLONE
    exit
    

    这是一个真正的head-scratcher,看起来像手动执行原始的post-receive钩子,因为git用户工作得很好......无论如何,Jekyll现在正在我的服务器上加载插件,并希望这个正确答案能够帮助其他人找到这个解。


    最近,我开始用jekyll构建https://github.com/alswl/code-standards-jekyll。 我在_plugins编写了两个插件,我发现它很难调试。

    起初,我用puts "balabala"进行调试,看起来很顺利。但是一旦我遇到在_site文件夹中没有生成任何东西的_site ,并且控制台中没有“balabala”,我很恐慌。

    在阅读jekyll源码之后,我尝试在_config.yml设置auto=false ,运行jekyll会产生一些调试跟踪堆栈错误。 感谢神。

    所以,ues auto=false会帮助你调试插件。

    链接地址: http://www.djcxy.com/p/63411.html

    上一篇: Jekyll not processing plugins on server

    下一篇: How do I list loaded plugins in Vim?