rake资产:预编译抛出Sass::SyntaxerError:CSS在“之后无效”*/&引用;
我希望这不是一个重复的问题;我试过其他的解决方法,所以没有效果 将我的应用程序推送到Heroku时,推送失败,因为application.css无法编译 我的终端输出:rake资产:预编译抛出Sass::SyntaxerError:CSS在“之后无效”*/&引用;,css,ruby-on-rails,heroku,compilation,precompile,Css,Ruby On Rails,Heroku,Compilation,Precompile,我希望这不是一个重复的问题;我试过其他的解决方法,所以没有效果 将我的应用程序推送到Heroku时,推送失败,因为application.css无法编译 我的终端输出: Running: rake assets:precompile rake aborted! Sass::SyntaxError: Invalid CSS after " */": expected selector, was "@font-face" (in /tmp/build_17e92975-ae8d-446f-8678-
Running: rake assets:precompile
rake aborted!
Sass::SyntaxError: Invalid CSS after " */": expected selector, was "@font-face"
(in /tmp/build_17e92975-ae8d-446f-8678-110eeeccfb64/app/assets/stylesheets/adminsite/application.css)
(sass):1845
尝试解决方案
我搜索并删除了../stylesheets/adminsite/目录中@字体前面的每个“*/”实例。同样的问题和结果
我试过设置:
config.assets.compile = true
…同样的问题
编辑
这是my application.css(不是应用程序级别1,而是adminsite目录中失败的应用程序)
通过移除和重新组合,我发现
*= require ./global/plugins/font-awesome/scss/font-awesome
这是该列表底部的3个,导致它失败。我现在可以在本地运行
rake assets:precompile --trace RAILS_ENV=production
但我不能用你的话逼着heroku
git push herokunb newbeta:master
已解决:
这是一个很棒的CSS字体。从中删除它需要修复它。这个问题似乎没有解决,只是因为我自己在git上犯了错误。解决方案 破坏东西的文件是字体可怕的CSS。将其从application.css的“require”行中删除后,预编译就可以工作了 实现这一点的方法是首先删除所有预编译require字段,显示它将编译,然后慢慢添加require字段以查看其中断的位置
(感谢所有帮助解决这个问题的人。)即使你找到了解决方法,我也要分享我的解决方案,因为我面临着同样的问题,调试起来有点困难 您可能正在使用
rails
3.2、sass-rails
3.2和font-awesome-sass
4.1
结果是rails
3.2使用了sass-rails
3.2.6,这取决于sass
>=3.1。但是,看起来sass
3.1与font-awesome
4.1不兼容,因此我明确地将sass
gem设置为在我的Gemfile上使用3.2版
gem 'sass-rails', '~> 3.2.6'
gem 'sass', '~> 3.2.0'
希望这对别人有帮助!;) 对我来说,我忘了在班级登录前添加#
应该是
#sign-in
(your code)
我是rails的新手,在推heroku时遇到了类似的问题。一位朋友查看了我的application.css文件,发现我
*=需要引导
及
*=需要引导datetimepicker
在*/
删除它们使我能够成功地推进。我也遇到了类似的问题,并偶然发现了这条线索。对我来说,我在一条CSS语句的末尾留下了一个}。添加了它,我在几分钟内就备份了。解决这个问题的另一种方法是明确告诉资产管道使用css版本的资产,而不是scss版本的资产。例如,如果要在application.scss中导入.scss文件,如下所示:
@import "angular-material"; # this will use scss version of the asset
您也可以这样告诉它使用css版本:
@import "angular-material.css"; # this will use the css version
大多数供应商都提供SCS和css版本,因此依赖资产的css版本非常有用,尤其是在使用供应商资产时。请记住,所有内容最终都将被预编译和丑化,因此使用SCS或css时,它们最终都是相同的。它是临时目录中的文件,而不是项目目录中的文件。请删除该文件,然后重试。如果它仍然抱怨,打开文件并在第1845行(或它抱怨的任何地方)附近发布内容。你能发布你的application.css吗?posted application.css。没有“/tmp/BUILD17E92975-ae8d-446f-8678-110eeeccfb64/”。。。似乎是在使用rake时构造和删除的?请将您的解决方案作为答案发布并接受它。如果您删除字体可怕的CSS,您可以成功部署您的应用程序。但是你所有的页面都不会有CSS。如何处理?在底层的
sass
gem从3.3.10更新到3.4.9之后,我遇到了相同的问题,不同的版本。在Gemfile中显式设置它修复了它:gem'sass',“~>3.3.10”
@import "angular-material.css"; # this will use the css version