Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
rake资产:预编译抛出Sass::SyntaxerError:CSS在“之后无效”*/&引用;_Css_Ruby On Rails_Heroku_Compilation_Precompile - Fatal编程技术网

rake资产:预编译抛出Sass::SyntaxerError: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-

我希望这不是一个重复的问题;我试过其他的解决方法,所以没有效果

将我的应用程序推送到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-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