2016-03-22 120 views
2

当我尝试将我的Rails项目推送到Heroku时,出现错误消息。我使用Fontawesome,它在当地环境中工作正常,但不会推到Heroku。部署到heroku时导致Rails编译器出现fontawesome错误

Running: rake assets:precompile I, [2016-03-22T05:59:25.096354 #366] INFO -- : Writing /tmp/build_3e31f1bb8b828cb787890706e9ec589b/public/assets/FontAwesome-0d34da07e5cbcb4ff087b397966a9f9ffb4d6ed7c7060568565203c02f3fee11.otf I, [2016-03-22T05:59:25.099701 #366] INFO -- : Writing /tmp/build_3e31f1bb8b828cb787890706e9ec589b/public/assets/fontawesome-webfont-e511891d3e01b0b27aed51a219ced5119e2c3d0460465af8242e9bff4cb61b77.eot

rake aborted! Sass::SyntaxError: Invalid CSS after "...orm-group::not(": expected pseudo_expr, was ":first-child)" (sass):9108

/tmp/build_3e31f1bb8b828cb787890706e9ec589b/vendor/bundle/ruby/2.2.0/gems/sprockets-rails-3.0.4/lib/sprockets/rails/task.rb:67:inblock (2 levels) in define' Tasks: TOP => assets:precompile (See full trace by running task with --trace) ! ! Precompiling assets failed. ! ! Push rejected, failed to compile Ruby app

这里是我的Gemfile:

source 'https://rubygems.org' 

gem 'sprockets', '~> 3.0' 
gem 'rails', '4.2.6' 
gem 'pg', '~> 0.15' 
gem 'sass-rails', '~> 5.0' 
gem 'uglifier', '>= 1.3.0' 
gem 'coffee-rails', '~> 4.1.0' 
gem 'jquery-rails' 
gem 'turbolinks' 
gem 'jbuilder', '~> 2.0' 
gem 'sdoc', '~> 0.4.0', group: :doc 

group :development, :test do 
gem 'byebug' 
end 

group :development do 
    gem 'web-console', '~> 2.0' 
    gem 'spring' 
end 

回答

2

将这个宝石在你的宝石文件:

gem 'font-awesome-sass', '~> 4.5.0' 

然后在你的application.scss导入这些

@import "font-awesome-sprockets"; 
@import "font-awesome"; 

然后bundle install使用控制台中的宝石。

然后(重要)用耙子在控制台清理和推前预编译的资产的Heroku

rake assets:clean 
rake assets:precompile 

现在你的资产应该当你推正确编译。

+0

就是这样。我尝试运行rake资源:预编译命令,当我尝试推送到Heroku时,它给了我同样的错误。诀窍是在预编译资产之前先做rake资产:clean .-) –