NoClassDefFoundError: org/grails/compiler/gorm/GormEntityTransformation
NoClassDefFoundError: org/grails/compiler/gorm/GormEntityTransformation
我目前正在将一个相当大的应用程序从 mongodb:3.0.2 升级到 mongodb:5.0.1.RELEASE,并且在尝试 [=12] 时收到以下异常=]
Caused by: java.lang.NoClassDefFoundError: org/grails/compiler/gorm/GormEntityTransformation
at org.codehaus.groovy.grails.compiler.gorm.GormTransformer.performInjection(GormTransformer.java:69)
at org.codehaus.groovy.grails.compiler.gorm.GormTransformer.performInjectionOnAnnotatedClass(GormTransformer.java:78)
at org.codehaus.groovy.grails.compiler.gorm.GormTransformer.performInjection(GormTransformer.java:61)
我按照这些说明使用了新的 mongodb 插件:
http://grails.github.io/grails-data-mapping/latest/mongodb/manual/guide/gettingStarted.html
我的环境:
- OS: Windows 7
- JVM:1.8.0_66
- Grails: 2.5.3
- Groovy: 2.4.4
我使用 grails 2.5.3 创建了一个 new/clean 项目并将其升级到新版本的 mongodb 插件并且它运行良好,所以我知道问题出在我的配置上,但我 运行 没地方看。
我的构建配置:
dependencies {
runtime 'org.springframework.data:spring-data-mongodb:1.8.1.RELEASE'
compile "net.sf.ehcache:ehcache-core:2.4.8"
test "org.gebish:geb-spock:$gebVersion"
test "org.seleniumhq.selenium:selenium-firefox-driver:$seleniumVersion"
test "org.seleniumhq.selenium:selenium-chrome-driver:$seleniumVersion"
test "org.seleniumhq.selenium:selenium-ie-driver:$seleniumVersion"
test "org.seleniumhq.selenium:selenium-support:$seleniumVersion"
test("org.seleniumhq.selenium:selenium-htmlunit-driver:$seleniumVersion") { exclude 'xml-apis' }
build 'org.apache.httpcomponents:httpcore:4.3.2'
build 'org.apache.httpcomponents:httpclient:4.3.2'
runtime 'org.apache.httpcomponents:httpcore:4.3.2'
runtime 'org.apache.httpcomponents:httpclient:4.3.2'
compile 'org.apache.poi:poi:3.11'
compile 'org.apache.poi:poi-ooxml:3.11'
compile 'org.apache.poi:poi-ooxml-schemas:3.11'
compile 'org.apache.poi:ooxml-schemas:1.1'
compile "com.sun.jersey:jersey-bundle:1.6"
compile 'org.codehaus.groovy.modules.http-builder:http-builder:0.7.1'
runtime 'xml-apis:xml-apis:1.4.01'
compile 'org.apache.httpcomponents:httpmime:4.3.3'
test 'org.powermock:powermock-api-mockito:1.6.2'
compile 'org.apache.commons:commons-lang3:3.4'
}
plugins {
build ":tomcat:7.0.55"
compile ":scaffolding:2.1.2"
compile ':cache:1.1.8'
compile ":asset-pipeline:1.9.9"
compile ":less-asset-pipeline:1.10.0"
runtime ":database-migration:1.4.0"
runtime ":jquery:1.11.1"
runtime ':aws-sdk:1.9.22'
compile(":mongodb:5.0.1.RELEASE");
compile ":spring-security-core:2.0-RC4"
compile ":fields:1.4"
compile ":mail:1.0.7"
compile ":phonenumbers:0.10"
test "org.grails.plugins:geb:$gebVersion"
}
我找到了。我还需要升级 GORM 而不仅仅是 gorm mongodb 插件。这让我解决了这个问题。
dependencies {
...
compile org.grails:grails-datastore-gorm:5.0.1.RELEASE'
...
}
我目前正在将一个相当大的应用程序从 mongodb:3.0.2 升级到 mongodb:5.0.1.RELEASE,并且在尝试 [=12] 时收到以下异常=]
Caused by: java.lang.NoClassDefFoundError: org/grails/compiler/gorm/GormEntityTransformation
at org.codehaus.groovy.grails.compiler.gorm.GormTransformer.performInjection(GormTransformer.java:69)
at org.codehaus.groovy.grails.compiler.gorm.GormTransformer.performInjectionOnAnnotatedClass(GormTransformer.java:78)
at org.codehaus.groovy.grails.compiler.gorm.GormTransformer.performInjection(GormTransformer.java:61)
我按照这些说明使用了新的 mongodb 插件:
http://grails.github.io/grails-data-mapping/latest/mongodb/manual/guide/gettingStarted.html
我的环境:
- OS: Windows 7
- JVM:1.8.0_66
- Grails: 2.5.3
- Groovy: 2.4.4
我使用 grails 2.5.3 创建了一个 new/clean 项目并将其升级到新版本的 mongodb 插件并且它运行良好,所以我知道问题出在我的配置上,但我 运行 没地方看。
我的构建配置:
dependencies {
runtime 'org.springframework.data:spring-data-mongodb:1.8.1.RELEASE'
compile "net.sf.ehcache:ehcache-core:2.4.8"
test "org.gebish:geb-spock:$gebVersion"
test "org.seleniumhq.selenium:selenium-firefox-driver:$seleniumVersion"
test "org.seleniumhq.selenium:selenium-chrome-driver:$seleniumVersion"
test "org.seleniumhq.selenium:selenium-ie-driver:$seleniumVersion"
test "org.seleniumhq.selenium:selenium-support:$seleniumVersion"
test("org.seleniumhq.selenium:selenium-htmlunit-driver:$seleniumVersion") { exclude 'xml-apis' }
build 'org.apache.httpcomponents:httpcore:4.3.2'
build 'org.apache.httpcomponents:httpclient:4.3.2'
runtime 'org.apache.httpcomponents:httpcore:4.3.2'
runtime 'org.apache.httpcomponents:httpclient:4.3.2'
compile 'org.apache.poi:poi:3.11'
compile 'org.apache.poi:poi-ooxml:3.11'
compile 'org.apache.poi:poi-ooxml-schemas:3.11'
compile 'org.apache.poi:ooxml-schemas:1.1'
compile "com.sun.jersey:jersey-bundle:1.6"
compile 'org.codehaus.groovy.modules.http-builder:http-builder:0.7.1'
runtime 'xml-apis:xml-apis:1.4.01'
compile 'org.apache.httpcomponents:httpmime:4.3.3'
test 'org.powermock:powermock-api-mockito:1.6.2'
compile 'org.apache.commons:commons-lang3:3.4'
}
plugins {
build ":tomcat:7.0.55"
compile ":scaffolding:2.1.2"
compile ':cache:1.1.8'
compile ":asset-pipeline:1.9.9"
compile ":less-asset-pipeline:1.10.0"
runtime ":database-migration:1.4.0"
runtime ":jquery:1.11.1"
runtime ':aws-sdk:1.9.22'
compile(":mongodb:5.0.1.RELEASE");
compile ":spring-security-core:2.0-RC4"
compile ":fields:1.4"
compile ":mail:1.0.7"
compile ":phonenumbers:0.10"
test "org.grails.plugins:geb:$gebVersion"
}
我找到了。我还需要升级 GORM 而不仅仅是 gorm mongodb 插件。这让我解决了这个问题。
dependencies {
...
compile org.grails:grails-datastore-gorm:5.0.1.RELEASE'
...
}