Jekyll travis ci:生成期间出错(没有此类文件或目录)

Jekyll travis ci:生成期间出错(没有此类文件或目录),jekyll,travis-ci,Jekyll,Travis Ci,我在为我的jekyll应用程序测试基于travis ci的构建时遇到问题。其中一个插件生成一个json,其中包含我的应用程序可以通过搜索工具获取的信息 “生成”命令在我的计算机上运行良好: bundle exec jekyll build --source octopress Witch将信息索引到我构建的目录(\u站点)中的search.json文件中 但它在特拉维斯·西身上和在赫罗库身上一样失败 writting search.json to /home/travis/build/alai

我在为我的jekyll应用程序测试基于travis ci的构建时遇到问题。其中一个插件生成一个json,其中包含我的应用程序可以通过搜索工具获取的信息

“生成”命令在我的计算机上运行良好:

bundle exec jekyll build --source octopress
Witch将信息索引到我构建的目录(\u站点)中的search.json文件中

但它在特拉维斯·西身上和在赫罗库身上一样失败

writting search.json to /home/travis/build/alain-andre/mon_site/_site

jekyll 2.5.3 | Error:  No such file or directory - /home/travis/build/alain-andre/mon_site/_site/search.json

有人能帮忙吗?

好的,我找到了解决办法

我不得不将
search.json
添加到jekyll
站点中。保留_文件

首先要做的是在Jekyll模块内创建一个Jekyll::StaticFile

class SearchJson < Jekyll::StaticFile
  def write(dest)
    begin
      super(dest)
    rescue
    end

    true
  end
end

可能是github存储库?是的。我从这个问题上做了很多集成测试,好的承诺是241b4b78b40155a871b475b32bba4ac67d6165e3@AlainANDRE尝试在config.yml中添加
exclude:[vendor]
?我认为这是一个文件夹未找到的问题,或者你的脚本是一个命令的方式,但它看起来不是一个问题。关于@AlainANDRE的警告:通过查看您的,您似乎解决了生成
search.json
文件的问题。但现在我认为您在将站点部署到Heroku时遇到了问题。从上一次构建日志中可以看出,您的站点在生成后似乎没有提交,因此更新的
search.json
文件没有部署到Heroku。我的建议是在部署之前提交生成的站点。好机会@MatrixA当然可以,我要用heroku标签为这个问题发布一个新问题。我要回答这个问题。这是一个生成目录问题。和Heroku上的一样,而不是Travis ci上的,build dir不是我本地计算机上的。我会尽快反馈这个问题。
# Keep the file from being cleaned by Jekyll
Jekyll::SearchJson.new(site, site.dest, "/", filename)
site.keep_files << filename