2014-06-13 27 views
2

我在我們的Java應用程序中實現了Sass支持。由於我們已經有了wro4j(最新版本1.7.5),我決定將它的rubySassCss用作預處理器。我已經完成了所有配置,整個過程.scss文件都可以正常使用,直到我使用了一些更新的語法。Sass變量參數語法不適用於wro4j的rubySassCss

使用帶有3.2.0版Sass(http://sass-lang.com/documentation/file.SASS_CHANGELOG.html)的VIII 2012中引入的功能(即變量參數(「$ args ...」語法)和mixin聲明中的內容塊)時出現錯誤。

@mixin mix($arg...) { 
    font-size: 12px; 
} 

.class { 
    color: black; 
} 

例如當rubySassCss處理上述簡單.scss文件拋出:

2014-06-13 11:13:48,574 DEBUG [ro.isdc.wro.http.WroFilter] Exception occured 
ro.isdc.wro.WroRuntimeException: org.jruby.embed.EvalFailedException: (SyntaxError) Invalid CSS after "@mixin mix($arg": expected ")", was "...) {" 
     at ro.isdc.wro.extensions.processor.support.sass.RubySassEngine.process(RubySassEngine.java:70) 
     at ro.isdc.wro.extensions.processor.css.RubySassCssProcessor.process(RubySassCssProcessor.java:59) 
     at ro.isdc.wro.model.resource.processor.decorator.ProcessorDecorator.process(ProcessorDecorator.java:89) 
     at ro.isdc.wro.model.resource.processor.decorator.LazyProcessorDecorator.process(LazyProcessorDecorator.java:49) 
     at ro.isdc.wro.model.resource.processor.decorator.ProcessorDecorator.process(ProcessorDecorator.java:89) 
     at ro.isdc.wro.model.resource.processor.decorator.ProcessorDecorator.process(ProcessorDecorator.java:89) 

這不會讓我感到吃驚的是多少,如果不是事實,wro4j發行說明(https://code.google.com/p/wro4j/wiki/ReleaseNotes)明確規定他們實施的薩斯處理器3.2.1很久以前在第九2012:

版本1.5.0 日期:2012年9月27日

(...)

Issue523升級rubySassCss處理器3.2.1

任何人都可以告訴我,如果他們有同樣的問題或知道什麼可能會導致它?我真的很想利用這個可變參數語法。


這裏是我的pom.xml還有:

<dependency> 
    <groupId>ro.isdc.wro4j</groupId> 
    <artifactId>wro4j-core</artifactId> 
    <version>1.7.5</version> 
</dependency> 
<dependency> 
    <groupId>ro.isdc.wro4j</groupId> 
    <artifactId>wro4j-extensions</artifactId> 
    <version>1.7.5</version> 
</dependency> 

回答

1

看起來像你只需要強制青菜,寶石到3.2.1版本。 wro4j應該強制它自己,但它似乎沒有(它使用3.1.9版本)。無論如何,解決方案是在您的pom.xml文件的任何位置添加:

<dependency> 
    <groupId>me.n4u.sass</groupId> 
    <artifactId>sass-gems</artifactId> 
    <version>3.2.1</version> 
</dependency>