【问题标题】:Heroku deploy fails after upgrading to bootstrap 2.0.1 via twitter-bootstrap-rails gem通过 twitter-bootstrap-rails gem 升级到 bootstrap 2.0.1 后 Heroku 部署失败
【发布时间】:2012-02-23 23:23:25
【问题描述】:

更新:

git push heroku master 期间显示此错误:

-----> Preparing app for Rails asset pipeline
       Running: rake assets:precompile
       rake aborted!
       couldn't find file 'twitter/bootstrap'
       (in /tmp/build_2pmsvze33th3e/app/assets/javascripts/application.js:9)

       Tasks: TOP => assets:precompile:primary
       (See full trace by running task with --trace)
       Precompiling assets failed, enabling runtime asset compilation
       Injecting rails31_enable_runtime_asset_compilation
       Please see this article for troubleshooting help:
       http://devcenter.heroku.com/articles/rails31_heroku_cedar#troubleshooting

我按照guide 将 Bootstrap 2 布局升级到了 2.0.1。之后我得到这个错误部署到 Heroku:

2012-02-23T23:12:09+00:00 app[web.1]: ActionView::Template::Error ('twitter/bootstrap.less' wasn't found.
2012-02-23T23:12:09+00:00 app[web.1]: 
2012-02-23T23:12:09+00:00 app[web.1]:   (in /app/app/assets/stylesheets/bootstrap.css.less)):
2012-02-23T23:12:09+00:00 app[web.1]:     7:     /%title gitwatcher.com
2012-02-23T23:12:09+00:00 app[web.1]:     8:     = csrf_meta_tags
2012-02-23T23:12:09+00:00 app[web.1]:     9:     = stylesheet_link_tag "vendor",       :media => "screen"
2012-02-23T23:12:09+00:00 app[web.1]:     10:     = stylesheet_link_tag "application",  :rel => "stylesheet"
2012-02-23T23:12:09+00:00 app[web.1]:     11:     = stylesheet_link_tag "http://jqueryui.com/repository/tags/latest/themes/base/jquery.ui.all.css", :media => "screen, projection"
2012-02-23T23:12:09+00:00 app[web.1]:     12:     / 
2012-02-23T23:12:09+00:00 app[web.1]:     13:     :css
2012-02-23T23:12:09+00:00 app[web.1]:   app/views/layouts/application.html.haml:10:in `_app_views_layouts_application_html_haml___2608554683581233975_52490540'
2012-02-23T23:12:09+00:00 app[web.1]: 
2012-02-23T23:12:09+00:00 app[web.1]: 
2012-02-23T23:12:09+00:00 app[web.1]: cache: [GET /] miss
2012-02-23T23:12:09+00:00 app[web.1]:   Processing by HomeController#index as HTML
2012-02-23T23:12:09+00:00 app[web.1]: Rendered shared/_watch-list-tab.html.haml (4.5ms)
2012-02-23T23:12:09+00:00 app[web.1]: Rendered shared/_watch-list-table.html.haml (30.2ms)
2012-02-23T23:12:09+00:00 app[web.1]: Rendered home/index.html.haml within layouts/application (101.7ms)
2012-02-23T23:12:09+00:00 app[web.1]: Compiled vendor.css  (3ms)  (pid 1)
2012-02-23T23:12:09+00:00 app[web.1]: Compiled css3-github-buttons/gh-buttons.css  (0ms)  (pid 1)
2012-02-23T23:12:09+00:00 app[web.1]: Compiled jquery_carousel/carousel.css  (0ms)  (pid 1)
2012-02-23T23:12:09+00:00 app[web.1]: Compiled application.css  (2ms)  (pid 1)
2012-02-23T23:12:09+00:00 app[web.1]: Completed 500 Internal Server Error in 858ms

之前我有一个现有的 Rails 3.1.3 应用程序已经在 Heroku Cedar 上使用 Bootstrap 2 布局。

有什么想法吗?

【问题讨论】:

  • 奇怪的是它在 /app/app/assets/stylesheets/bootstrap.css.less 中查找 - 你的意思是有这样的嵌套应用程序文件夹吗?
  • 不,这是来自 heroku 日志。我不知道如何摆脱它,显然似乎是路径错误/重复,但在之前的 bootstrap-2 部署(通过github.com/seyhunak/twitter-bootstrap-rails gem)中没有发生,而且,在本地它工作正常......

标签: ruby-on-rails heroku asset-pipeline twitter-bootstrap


【解决方案1】:

删除以下文件 app/assets/stylesheets/bootstrap.css.less 并享受。 源https://github.com/seyhunak/twitter-bootstrap-rails/issues/123

【讨论】:

    【解决方案2】:

    我还将 gem "twitter-bootstrap-rails" 移到资产组之外,这很有效!

    【讨论】:

      【解决方案3】:

      我只需将 gem "twitter-bootstrap-rails" 移出 :assets 块并将其放在我的 gemfile 的顶部即可解决此问题。

      【讨论】:

        【解决方案4】:

        解决了。

        只需在 Gemfile 中注释掉以下行:

        #gem 'twitter-bootstrap-rails', :git => 'http://github.com/seyhunak/twitter-bootstrap-rails.git'
        

        并使用gem "twitter-bootstrap-rails", "~> 2.0.1.0" 然后运行bundle update

        完整地说,我之前失败的分支是:

        -  revision: a5d67d23afeaa76eb52c6f87d55ff407f9c753f2
        -    twitter-bootstrap-rails (2.0.1)
        

        【讨论】:

          【解决方案5】:

          对我来说,解决方案是删除 application.css 中的这一行

          *= require twitter/bootstrap
          

          Sehttps://github.com/seyhunak/twitter-bootstrap-rails/issues/123

          【讨论】:

            【解决方案6】:

            运行时资产编译期间出现错误的另一种解决方法是使用 asset_sync gem。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2020-03-21
              • 2012-12-25
              • 1970-01-01
              • 1970-01-01
              • 2015-12-14
              • 2023-03-20
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多