我在生产服务器上运行rake assets:precompile
时遇到错误。据我所知,在此之前我没有做任何不同的事情。在我的开发机器上运行rake assets:precompile
不会产生任何错误。我不知道如何调试这个。建议?我尝试使用--trace
选项运行,但它并没有给我任何更有用的信息来指出代码中的错误。
deploy@example.com:~/www/example.com/app/assets/stylesheets$ rake assets:precompile
(in /home/deploy/www/example.com)
/home/deploy/.rvm/rubies/ruby-1.9.3-p194/bin/ruby /home/deploy/.rvm/gems/ruby-1.9.3-p194@global/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets
rake aborted!
Invalid CSS after "...4882640c.png"")": expected "{", was ";background-pos..."
(in /home/deploy/www/example.com/app/assets/stylesheets/application.css)
Tasks: TOP => assets:precompile:primary
(See full trace by running task with --trace)
rake aborted!
Command failed with status (1): [/home/deploy/.rvm/rubies/ruby-1.9.3-p194/b...]
Tasks: TOP => assets:precompile
(See full trace by running task with --trace)
答案 0 :(得分:0)
application.css文件中有错误
它说
Invalid CSS after "...4882640c.png"")": expected "{", was ";background-pos..."
所以它看起来就是你设置背景图像的地方。
如果您需要帮助来查找错误。发布css文件
答案 1 :(得分:0)
Andreas Lyngstad说的大多是正确的,除非你在资产上运行预编译,所有内容都被添加到application.css文件中,所以错误不一定在那个文件中,只是你在某个地方有错误在任何包含在application.css文件中的css文件中。因此,您需要检查所有包含的css文件中的错误,您可以对所有css文件进行文本搜索,并根据您使用的编辑器尝试找到一行。
无论如何,希望这有帮助。
答案 2 :(得分:0)
我最终解决了这个问题。事实证明,这是我使用的Twitter bootstrap rails gem的一个问题。我正在使用https://github.com/seyhunak/twitter-bootstrap-rails。事实证明,这是在bootstrap_and_overrides.less文件中导入的其中一个工作表中的错误。对我来说,解决方案是将我的Gemfile中的gem冻结到版本2.1.7并处理之后出现的任何依赖性问题。