Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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.

like image 233
Vad1mo Avatar asked Oct 12 '14 10:10

Vad1mo


1 Answers

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.

like image 134
melix Avatar answered Oct 24 '22 05:10

melix