Uploaded image for project: 'OptaPlanner'
  1. OptaPlanner
  2. PLANNER-1727

ER doesn't start w/ Java 11

    XMLWordPrintable

Details

    • 2019 Week 47-49 (from Nov 18)
    • NEW
    • NEW

    Description

      We had the same problem on other modules in kiegroupg that use jaxb.
      JDK 8 included jaxb as part of JDK, but in JDK 11 those classes are out.
      The fix is to add a dependency on the Jaxb jars, which works for both JDK 8 and JDK 11.
      The challenge is finding the canonical Jaxb dependency... Search for "jaxb" in all pom.xml files in kiegroup first.

      org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1778) ~[spring-beans-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:593) ~[spring-beans-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:515) ~[spring-beans-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320) ~[spring-beans-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) ~[spring-beans-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318) ~[spring-beans-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) ~[spring-beans-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1105) ~[spring-context-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867) ~[spring-context-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549) ~[spring-context-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141) ~[spring-boot-2.1.8.RELEASE.jar!/:2.1.8.RELEASE]
      	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:744) ~[spring-boot-2.1.8.RELEASE.jar!/:2.1.8.RELEASE]
      	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:391) ~[spring-boot-2.1.8.RELEASE.jar!/:2.1.8.RELEASE]
      	at org.springframework.boot.SpringApplication.run(SpringApplication.java:312) ~[spring-boot-2.1.8.RELEASE.jar!/:2.1.8.RELEASE]
      	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215) ~[spring-boot-2.1.8.RELEASE.jar!/:2.1.8.RELEASE]
      	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1204) ~[spring-boot-2.1.8.RELEASE.jar!/:2.1.8.RELEASE]
      	at org.optaweb.employeerostering.OptaWebEmployeeRosteringApplication.main(OptaWebEmployeeRosteringApplication.java:34) ~[classes!/:7.30.0.Final]
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
      	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
      	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
      	at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) ~[employee-rostering-distribution-7.30.0.Final.jar:7.30.0.Final]
      	at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) ~[employee-rostering-distribution-7.30.0.Final.jar:7.30.0.Final]
      	at org.springframework.boot.loader.Launcher.launch(Launcher.java:51) ~[employee-rostering-distribution-7.30.0.Final.jar:7.30.0.Final]
      	at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:52) ~[employee-rostering-distribution-7.30.0.Final.jar:7.30.0.Final]
      Caused by: java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
      	at org.hibernate.boot.spi.XmlMappingBinderAccess.<init>(XmlMappingBinderAccess.java:43) ~[hibernate-core-5.3.7.Final.jar!/:5.3.7.Final]
      	at org.hibernate.boot.MetadataSources.<init>(MetadataSources.java:86) ~[hibernate-core-5.3.7.Final.jar!/:5.3.7.Final]
      	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:212) ~[hibernate-core-5.3.7.Final.jar!/:5.3.7.Final]
      	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:167) ~[hibernate-core-5.3.7.Final.jar!/:5.3.7.Final]
      	at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:51) ~[spring-orm-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365) ~[spring-orm-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:390) ~[spring-orm-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:377) ~[spring-orm-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341) ~[spring-orm-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1837) ~[spring-beans-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1774) ~[spring-beans-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
      	... 24 common frames omitted
      Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
      	at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471) ~[na:na]
      	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588) ~[na:na]
      	at org.springframework.boot.loader.LaunchedURLClassLoader.loadClass(LaunchedURLClassLoader.java:93) ~[employee-rostering-distribution-7.30.0.Final.jar:7.30.0.Final]
      	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[na:na]
      	... 35 common frames omitted
      
      

      Attachments

        Issue Links

          Activity

            People

              jucui Julian Cui (Inactive)
              lpetrovi@redhat.com Lukáš Petrovický (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: