2

Я пытаюсь обновить плагин mongodb с 2.0.1 до 3.0.3. Тем не менее, я получаю следующее сообщение об ошибке:Не удается запустить приложение Grails с плагином mongodb версии 3.0.3

java.lang.NoClassDefFoundError: com/mongodb/AggregationOptions 
    at java.lang.Class.getDeclaredMethods0(Native Method) 
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2531) 
    at java.lang.Class.getDeclaredMethods(Class.java:1855) 
    at org.codehaus.groovy.reflection.CachedClass$3$1.run(CachedClass.java:84) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at org.codehaus.groovy.reflection.CachedClass$3.initValue(CachedClass.java:81) 
    at org.codehaus.groovy.reflection.CachedClass$3.initValue(CachedClass.java:79) 
    at org.codehaus.groovy.util.LazyReference.getLocked(LazyReference.java:46) 
    at org.codehaus.groovy.util.LazyReference.get(LazyReference.java:33) 
    at org.codehaus.groovy.reflection.CachedClass.getMethods(CachedClass.java:250) 
    at groovy.lang.MetaClassImpl.populateMethods(MetaClassImpl.java:343) 
    at groovy.lang.MetaClassImpl.fillMethodIndex(MetaClassImpl.java:293) 
    at groovy.lang.MetaClassImpl.initialize(MetaClassImpl.java:3048) 
    at groovy.lang.ExpandoMetaClass.initialize(ExpandoMetaClass.java:483) 
    at org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(Cl 
    ... 

Я попытался изменить версию плагина для 3.0.2, но ошибка не будет устранена.

UPDATE:

Я на Grails 2.3.11.

Я попытался включая плагин с не указанием нет зависимостей, а также копию вставки зависимости от моей прошлой конфигурации, которая:

dependencies { 

     runtime "org.mongodb:mongo-java-driver:2.11.4" 
     compile "org.mongodb:mongo-java-driver:2.11.4" 
     runtime "com.gmongo:gmongo:1.2" 

    } 

и

plugins { 

     ... 

     compile(':mongodb:2.0.1') { 
      excludes 'mongo-java-driver', 'gmongo' 
     } 
+0

Не могли бы вы показать мне свою зависимость BuildConfig.groovy? Также, какую версию грааля вы используете? –

+0

@ShashankAgrawal Вопрос обновлен! –

ответ

2

Обновите свою BuildConfig немного:

compile ":mongodb:3.0.2" 

Не задавайте никаких других зависимостей, связанных с Монго и не исключают mongo-java-driver или gmongo. Кроме того, если вы используете плагин mongeez, вы должны исключить java-драйвер.

compile (":mongeez:0.2.3") { 
    excludes("mongo-java-driver") 
} 
+0

Через 3 месяца это, кажется, лучшее решение! Я думал, что это не сработало в первый раз, но сейчас! –

2

изменения зависимостей в:

runtime "org.mongodb:mongo-java-driver:2.12.3" 

compile "org.mongodb:mongo-java-driver:2.12.3" 

работы

+0

Спасибо! Что было добавлено в '2.12.3', которое не было доступно в' 2.11.4'? –