2014-06-13 2 views
2

Java 응용 프로그램에서 Sass 지원을 구현 중입니다. 우리가 이미 wro4j (최신 버전 1.7.5에서)를 가지고 있기 때문에, 전 프로세서로 rubySassCss를 사용하기로 결정했습니다. 모든 정보를 처리하고 .scss 파일을 처리합니다. 일부 새로운 구문을 사용할 때까지.변수 인수 구문이 wro4j의 rubySassCss에서 작동하지 않습니다.

SIN (http://sass-lang.com/documentation/file.SASS_CHANGELOG.html)의 3.2.0 버전, 즉 변수 인수 ("$ args ..."구문) 및 mixin 선언의 내용 블록으로 VIII 2012에서 가져온 기능을 사용할 때 오류가 발생합니다. rubySassCss에 의해 처리 할 때

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

.class { 
    color: black; 
} 

예를 들어 위의 간단한 .scss 파일 예외 :없는 사실 wro4j 릴리스 노트 (https://code.google.com/p/wro4j/wiki/ReleaseNotes가) 명확하게 명시하는 것이 있다면, 그만큼 나를 놀라게하지 않을

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) 

그들은 IX 2012 년 3.2.1 오래 전에 말대꾸 프로세서를 구현하는 것이 :

릴리스 1.5.0 날짜 27 년 9 월 2012

(...)

Issue523 3.2.1에 rubySassCss 프로세서는 동일한 문제가 있거나 발생할 수 있습니다 알고있는 경우

누구는 말해 줄 수 업그레이드? 그 가변 인자 구문을 이용하고 싶습니다.


여기 내 pom.xml 파일뿐만 아니라 : 당신은 단지 3.2.1 버전으로 말대꾸-보석을 강제 할 필요가 같은

<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

보인다. wro4j는 그 자체를 강제해야하지만, 그렇지 않은 것 같습니다 (대신 3.1.9 버전 사용). 어쨌든 해결책은 pom.xml에 다음을 추가하는 것입니다.

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