2015-02-08 3 views
1

Я получаю следующее исключение во время работы run-war на IntelliJ IDEA.Исключение исключения Grails во время бега: NoSuchMethodError

| Uglifying File 44 of 464 - application.      
| Error Error executing script RunWar: com.google.common.collect.Maps.immutableEnumMap(Ljava/util/Map;)Lcom/google/common/collect/ImmutableMap; (NOTE: Stack trace has been filtered. 
Use --verbose to see entire trace.) 
java.lang.NoSuchMethodError: com.google.common.collect.Maps.immutableEnumMap(Ljava/util/Map;)Lcom/google/common/collect/ImmutableMap; 
     at com.google.javascript.jscomp.parsing.parser.Keywords.<clinit>(Keywords.java:94) 
     at com.google.javascript.jscomp.parsing.parser.Scanner.scanIdentifierOrKeyword(Scanner.java:681) 
     at com.google.javascript.jscomp.parsing.parser.Scanner.scanToken(Scanner.java:569) 
     at com.google.javascript.jscomp.parsing.parser.Scanner.peekToken(Scanner.java:228) 
     at com.google.javascript.jscomp.parsing.parser.Parser.peekToken(Parser.java:2737) 
     at com.google.javascript.jscomp.parsing.parser.Parser.peekToken(Parser.java:2730) 
     at com.google.javascript.jscomp.parsing.parser.Parser.getTreeStartLocation(Parser.java:2649) 
     at com.google.javascript.jscomp.parsing.parser.Parser.parseProgram(Parser.java:147) 
     at com.google.javascript.jscomp.parsing.ParserRunner.parse(ParserRunner.java:102) 
     at com.google.javascript.jscomp.JsAst.parse(JsAst.java:84) 
     at com.google.javascript.jscomp.JsAst.getAstRoot(JsAst.java:50) 
     at com.google.javascript.jscomp.CompilerInput.getAstRoot(CompilerInput.java:118) 
     at com.google.javascript.jscomp.Compiler.hoistExterns(Compiler.java:1467) 
     at com.google.javascript.jscomp.Compiler.parseInputs(Compiler.java:1369) 
     at com.google.javascript.jscomp.Compiler.parse(Compiler.java:788) 
     at com.google.javascript.jscomp.Compiler.compileInternal(Compiler.java:743) 
     at com.google.javascript.jscomp.Compiler.access$000(Compiler.java:93) 
     at com.google.javascript.jscomp.Compiler$3.call(Compiler.java:655) 
     at com.google.javascript.jscomp.Compiler$3.call(Compiler.java:652) 
     at com.google.javascript.jscomp.Compiler$4.call(Compiler.java:699) 

Если я бегу же приложения с помощью run-app он работает.

Это BuildConfig.groovy:

 build ":tomcat:7.0.55" 

     compile ':cache:1.1.8' 
     compile ":asset-pipeline:2.1.1" 
     compile ":easygrid:1.6.9" 
     compile ":twitter-bootstrap:3.3.2.1" 
     compile ':spring-security-core:2.0-RC4' 
     compile ":jquery-validation-ui:1.4.9" 

     compile ":birt-report:4.3.0.3" 

     runtime ":hibernate:3.6.10.18" 
     runtime ":database-migration:1.4.0" 
     runtime ":jquery:1.11.1" 

Любая идея, что это может быть? или как его решить?

ответ

1

https://code.google.com/p/guava-libraries/wiki/UseGuavaInYourBuild

Убедитесь, что есть две вещи, установленные в вашей BuildConfig:

repositories { 
    mavenCentral() 
} 

dependencies { 
    compile group: 'com.google.guava', name: 'guava', version: '12.0' 
} 

Просто убедитесь, что вы используете правильную версию, что вам нужно. Затем выполняйте зависящие от Grails зависимости.

+0

Это не работает :( – HalaKuwatly

+0

Вы получаете ту же ошибку? Вы также можете попробовать разместить фактическую банку в своей папке lib. Просто убедитесь, что она выбрана в вас Build Path. – wagonwheel

+0

да, я все еще получаю ту же ошибку – HalaKuwatly

1

У меня была такая же проблема с Grails 2.5.0, и я исправил ее, ударив версию guava до последней доступной.

В моей grails-app/conf/BuildConfig.groovy, теперь у меня есть:

dependencies { 
    compile group: 'com.google.guava', name: 'guava', version: '18.0' 
} 

И решить эту проблему.

2

Добавление сборки в области видимости зависимости от гуавы устранил эту проблему для меня в Grails 2.5.2 приложения

dependencies { 
    // other dependencies go here 
    build 'com.google.guava:guava:18.0' 
} 
0

Я имел ту же ошибку и исправить ее, используя последнюю версию плагина активов: (компилировать «орг .grails.plugins: asset-pipe: 2.11.0 ")

Смежные вопросы