Vad1mo
Vad1mo

Reputation: 5545

Java 1.8u20 fails to start with spring boot and groovy 2.3.7

I just updated java to 1.8u20 now I get this exception which I didn't get when I used Java 1.8u05 Im using latest spring boot 1.18 and groovy 2.3.7 indy.

Does someone know if this is is a java,spring or groovy issue?

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'validationController': Injection of autowired dependencies failed; 
nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private java.lang.Object io.demo.online.service.ValidationController.MappingJackson2JsonView; 
nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'viewResolver' defined in class path resource [org/springframework/boot/autoconfigure/web/WebMvcAutoConfiguration$WebMvcAutoConfigurationAdapter.class]: Initialization of bean failed; 
nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'groovyTemplateViewResolver' defined in class path resource [org/springframework/boot/autoconfigure/groovy/template/GroovyTemplateAutoConfiguration$GroovyWebConfiguration.class]: Unsatisfied dependency expressed through constructor argument with index 0 of type [groovy.text.TemplateEngine]: : Error creating bean with name 'groovyTemplateEngine' defined in class path resource [org/springframework/boot/autoconfigure/groovy/template/GroovyTemplateAutoConfiguration$GroovyMarkupConfiguration.class]: Instantiation of bean failed; 
nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Factory method [public groovy.text.TemplateEngine org.springframework.boot.autoconfigure.groovy.template.GroovyTemplateAutoConfiguration$GroovyMarkupConfiguration.groovyTemplateEngine() throws java.lang.Exception] threw exception; nested exception is java.lang.VerifyError: Bad <init> method call from inside of a branch
Exception Details:
  Location:
    org/codehaus/groovy/control/customizers/ASTTransformationCustomizer.<init>(Ljava/lang/Class;)V @155: invokespecial
  Reason:
    Error exists in the bytecode
  Bytecode:
    0x0000000: 05bd 006c 5903 2b53 5904 2bba 0071 0000
    0x0000010: 5359 10ff 1202 b800 772a 5fab 0000 0182
    0x0000020: 0000 000a b951 be33 0000 0059 bd3c 11f8
    0x0000030: 0000 0086 e4d2 7468 0000 00aa f226 4f65
    0x0000040: 0000 00bc 1cb4 ddcd 0000 00ce 224d 0e57
    0x0000050: 0000 00e9 4441 e4ca 0000 010d 4c34 1502
    0x0000060: 0000 0128 589a 5432 0000 0143 6648 e9fd
    0x0000070: 0000 015e 5f5a 5903 32ba 0080 0000 5f59
    0x0000080: 0432 ba00 4300 005f 5905 32ba 0083 0000
    0x0000090: 5f59 0632 ba00 8600 005f 57b7 0089 a701
    0x00000a0: 095f 5a59 0332 ba00 4300 005f 5904 32ba
    0x00000b0: 0083 0000 5f59 0532 ba00 8600 005f 57b7
    0x00000c0: 008b a700 e55f 5a59 0332 ba00 4300 005f
    0x00000d0: 57b7 008e a700 d35f 5a59 0332 ba00 4b00
    0x00000e0: 005f 57b7 0091 a700 c15f 5a59 0332 ba00
    0x00000f0: 8000 005f 5904 32ba 0043 0000 5f57 b700
    0x0000100: 94a7 00a6 5f5a 5903 32ba 0080 0000 5f59
    0x0000110: 0432 ba00 4300 005f 5905 32ba 0083 0000
    0x0000120: 5f57 b700 97a7 0082 5f5a 5903 32ba 0080
    0x0000130: 0000 5f59 0432 ba00 4b00 005f 57b7 009a
    0x0000140: a700 675f 5a59 0332 ba00 4300 005f 5904
    0x0000150: 32ba 0086 0000 5f57 b700 9da7 004c 5f5a
    0x0000160: 5903 32ba 0043 0000 5f59 0432 ba00 8300
    0x0000170: 005f 57b7 009f a700 315f 5a59 0332 ba00
    0x0000180: 8000 005f 5904 32ba 0043 0000 5f59 0532
    0x0000190: ba00 8600 005f 57b7 00a2 a700 0dbb 00a4
    0x00001a0: 5912 a6b7 00a9 bf57 b1                 
  Stackmap Table:
    full_frame(@116,{UninitializedThis,Object[#121]},{Object[#125],UninitializedThis})
    full_frame(@161,{UninitializedThis,Object[#121]},{Object[#125],UninitializedThis})
    full_frame(@197,{UninitializedThis,Object[#121]},{Object[#125],UninitializedThis})
    full_frame(@215,{UninitializedThis,Object[#121]},{Object[#125],UninitializedThis})
    full_frame(@233,{UninitializedThis,Object[#121]},{Object[#125],UninitializedThis})
    full_frame(@260,{UninitializedThis,Object[#121]},{Object[#125],UninitializedThis})
    full_frame(@296,{UninitializedThis,Object[#121]},{Object[#125],UninitializedThis})
    full_frame(@323,{UninitializedThis,Object[#121]},{Object[#125],UninitializedThis})
    full_frame(@350,{UninitializedThis,Object[#121]},{Object[#125],UninitializedThis})
    full_frame(@377,{UninitializedThis,Object[#121]},{Object[#125],UninitializedThis})
    full_frame(@413,{UninitializedThis,Object[#121]},{Object[#125],UninitializedThis})
    full_frame(@423,{Object[#2],Object[#121]},{Object[#125]})

this is the list of all dependencies

runtime - Runtime classpath for source set 'main'.
+--- org.codehaus.groovy:groovy-all:2.3.7
+--- org.springframework.boot:spring-boot-starter-actuator:1.1.8.RELEASE
|    +--- org.springframework.boot:spring-boot-starter:1.1.8.RELEASE
|    |    +--- org.springframework.boot:spring-boot:1.1.8.RELEASE
|    |    |    +--- org.springframework:spring-core:4.0.7.RELEASE
|    |    |    \--- org.springframework:spring-context:4.0.7.RELEASE
|    |    |         +--- org.springframework:spring-aop:4.0.7.RELEASE
|    |    |         |    +--- aopalliance:aopalliance:1.0
|    |    |         |    +--- org.springframework:spring-beans:4.0.7.RELEASE
|    |    |         |    |    \--- org.springframework:spring-core:4.0.7.RELEASE
|    |    |         |    \--- org.springframework:spring-core:4.0.7.RELEASE
|    |    |         +--- org.springframework:spring-beans:4.0.7.RELEASE (*)
|    |    |         +--- org.springframework:spring-core:4.0.7.RELEASE
|    |    |         \--- org.springframework:spring-expression:4.0.7.RELEASE
|    |    |              \--- org.springframework:spring-core:4.0.7.RELEASE
|    |    +--- org.springframework.boot:spring-boot-autoconfigure:1.1.8.RELEASE
|    |    |    \--- org.springframework.boot:spring-boot:1.1.8.RELEASE (*)
|    |    +--- org.springframework.boot:spring-boot-starter-logging:1.1.8.RELEASE
|    |    |    +--- org.slf4j:jcl-over-slf4j:1.7.7
|    |    |    |    \--- org.slf4j:slf4j-api:1.7.7
|    |    |    +--- org.slf4j:jul-to-slf4j:1.7.7
|    |    |    |    \--- org.slf4j:slf4j-api:1.7.7
|    |    |    +--- org.slf4j:log4j-over-slf4j:1.7.7
|    |    |    |    \--- org.slf4j:slf4j-api:1.7.7
|    |    |    \--- ch.qos.logback:logback-classic:1.1.2
|    |    |         +--- ch.qos.logback:logback-core:1.1.2
|    |    |         \--- org.slf4j:slf4j-api:1.7.6 -> 1.7.7
|    |    +--- org.springframework:spring-core:4.0.7.RELEASE
|    |    \--- org.yaml:snakeyaml:1.13
|    +--- org.springframework.boot:spring-boot-actuator:1.1.8.RELEASE
|    |    +--- org.springframework.boot:spring-boot:1.1.8.RELEASE (*)
|    |    +--- org.springframework.boot:spring-boot-autoconfigure:1.1.8.RELEASE (*)
|    |    +--- com.fasterxml.jackson.core:jackson-databind:2.3.4
|    |    |    +--- com.fasterxml.jackson.core:jackson-annotations:2.3.0
|    |    |    \--- com.fasterxml.jackson.core:jackson-core:2.3.4
|    |    +--- org.springframework:spring-core:4.0.7.RELEASE
|    |    \--- org.springframework:spring-context:4.0.7.RELEASE (*)
|    \--- org.springframework:spring-core:4.0.7.RELEASE
+--- org.springframework.boot:spring-boot-starter-web:1.1.8.RELEASE
|    +--- org.springframework.boot:spring-boot-starter:1.1.8.RELEASE (*)
|    +--- com.fasterxml.jackson.core:jackson-databind:2.3.4 (*)
|    +--- org.hibernate:hibernate-validator:5.0.3.Final -> 5.1.2.Final
|    |    +--- javax.validation:validation-api:1.1.0.Final
|    |    +--- org.jboss.logging:jboss-logging:3.1.3.GA
|    |    \--- com.fasterxml:classmate:1.0.0
|    +--- org.springframework:spring-core:4.0.7.RELEASE
|    +--- org.springframework:spring-web:4.0.7.RELEASE
|    |    +--- org.springframework:spring-aop:4.0.7.RELEASE (*)
|    |    +--- org.springframework:spring-beans:4.0.7.RELEASE (*)
|    |    +--- org.springframework:spring-context:4.0.7.RELEASE (*)
|    |    \--- org.springframework:spring-core:4.0.7.RELEASE
|    \--- org.springframework:spring-webmvc:4.0.7.RELEASE
|         +--- org.springframework:spring-beans:4.0.7.RELEASE (*)
|         +--- org.springframework:spring-context:4.0.7.RELEASE (*)
|         +--- org.springframework:spring-core:4.0.7.RELEASE
|         +--- org.springframework:spring-expression:4.0.7.RELEASE (*)
|         \--- org.springframework:spring-web:4.0.7.RELEASE (*)
+--- org.eclipse.jetty:jetty-webapp:9.2.0.v20140526
|    +--- org.eclipse.jetty:jetty-xml:9.2.0.v20140526
|    |    \--- org.eclipse.jetty:jetty-util:9.2.0.v20140526
|    \--- org.eclipse.jetty:jetty-servlet:9.2.0.v20140526
|         \--- org.eclipse.jetty:jetty-security:9.2.0.v20140526
|              \--- org.eclipse.jetty:jetty-server:9.2.0.v20140526
|                   +--- javax.servlet:javax.servlet-api:3.1.0
|                   +--- org.eclipse.jetty:jetty-http:9.2.0.v20140526
|                   |    \--- org.eclipse.jetty:jetty-util:9.2.0.v20140526
|                   \--- org.eclipse.jetty:jetty-io:9.2.0.v20140526
|                        \--- org.eclipse.jetty:jetty-util:9.2.0.v20140526
+--- org.eclipse.jetty:jetty-jsp:9.2.0.v20140526
|    +--- org.eclipse.jetty.toolchain:jetty-schemas:3.1.M0
|    +--- javax.servlet:javax.servlet-api:3.1.0
|    +--- javax.servlet.jsp:javax.servlet.jsp-api:2.3.1
|    +--- org.glassfish.web:javax.servlet.jsp:2.3.2
|    |    +--- org.glassfish:javax.el:[3.0.0,) -> 3.0.1-b05
|    |    \--- javax.servlet.jsp:javax.servlet.jsp-api:2.3.1
|    +--- org.eclipse.jetty.orbit:javax.servlet.jsp.jstl:1.2.0.v201105211821
|    +--- org.glassfish.web:javax.servlet.jsp.jstl:1.2.2
|    +--- org.glassfish:javax.el:3.0.0 -> 3.0.1-b05
|    \--- org.eclipse.jetty.orbit:org.eclipse.jdt.core:3.8.2.v20130121
+--- org.eclipse.jetty:jetty-servlets:9.2.0.v20140526
|    +--- org.eclipse.jetty:jetty-continuation:9.2.0.v20140526
|    +--- org.eclipse.jetty:jetty-http:9.2.0.v20140526 (*)
|    +--- org.eclipse.jetty:jetty-util:9.2.0.v20140526
|    \--- org.eclipse.jetty:jetty-io:9.2.0.v20140526 (*)
+--- org.springframework:spring-aspects:4.0.7.RELEASE
|    \--- org.aspectj:aspectjweaver:1.8.2
+--- javax.inject:javax.inject:1
+--- commons-io:commons-io:2.4
+--- xmlunit:xmlunit:1.5
+--- com.google.guava:guava:18.0
\--- org.hibernate:hibernate-validator:5.1.2.Final (*)

I can reproduce this error on linux and macos.

Upvotes: 8

Views: 2761

Answers (1)

melix
melix

Reputation: 1530

Unfortunately JDK 1.8u20 had several verifier bugs which make it incompatible with groovy. You should try with 1.8u5 or the latest EAP of 8u40.

Upvotes: 5

Related Questions