2017-10-20 4 views
4

J'utilise le INITIALIZR de printemps avec ces paramètres:printemps Initializr projet de base ne construirons pas

  • Java
  • Maven
  • 2.0.0 (snapshot)
  • Jar
  • Web
  • JPA
  • H2
  • Thymeleaf
  • actionneur

Chaque fois que je tente d'exécuter ./mvnw spring-boot:run il échoue avec cette erreur. Je ne sais pas ce qui ne va pas. J'ai essayé d'employer d'autres variations de projet dans l'initializr de ressort et supprimant tous mes repos de maven utilisant mvn dependency:purge-local-repository. La reconstruction est réussie, mais quand j'essaye de commencer le ressort, ce problème surgit.

. ____   _   __ _ _ 
/\\/___'_ __ _ _(_)_ __ __ _ \ \ \ \ 
(()\___ | '_ | '_| | '_ \/ _` | \ \ \ \ 
\\/ ___)| |_)| | | | | || (_| | )))) 
    ' |____| .__|_| |_|_| |_\__, |//// 
=========|_|==============|___/=/_/_/_/ 
:: Spring Boot :: (v2.0.0.BUILD-SNAPSHOT) 

2017-10-20 14:02:15.099 INFO 11891 --- [   main] c.e.c.s.Spring5webappApplication   : Starting Spring5webappApplication on Clements-MacBook-Pro.local with PID 11891 (/Users/clement/Downloads/spring5webapp/target/classes started by clement in /Users/clement/Downloads/spring5webapp) 
2017-10-20 14:02:15.101 INFO 11891 --- [   main] c.e.c.s.Spring5webappApplication   : No active profile set, falling back to default profiles: default 
2017-10-20 14:02:15.157 INFO 11891 --- [   main] ConfigServletWebServerApplicationContext : Refreshing org.springframework.boot.web.ser[email protected]5184cd62: startup date [Fri Oct 20 14:02:15 NZDT 2017]; root of context hierarchy 
WARNING: An illegal reflective access operation has occurred 
WARNING: Illegal reflective access by org.springframework.cglib.core.ReflectUtils$1 (file:/Users/clement/.m2/repository/org/springframework/spring-core/5.0.1.BUILD-SNAPSHOT/spring-core-5.0.1.BUILD-SNAPSHOT.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) 
WARNING: Please consider reporting this to the maintainers of org.springframework.cglib.core.ReflectUtils$1 
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations 
WARNING: All illegal access operations will be denied in a future release 
2017-10-20 14:02:16.592 INFO 11891 --- [   main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$c4da628] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) 
2017-10-20 14:02:17.250 INFO 11891 --- [   main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http) 
2017-10-20 14:02:17.264 INFO 11891 --- [   main] o.apache.catalina.core.StandardService : Starting service [Tomcat] 
2017-10-20 14:02:17.265 INFO 11891 --- [   main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.23 
2017-10-20 14:02:17.361 INFO 11891 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]  : Initializing Spring embedded WebApplicationContext 
2017-10-20 14:02:17.361 INFO 11891 --- [ost-startStop-1] o.s.web.context.ContextLoader   : Root WebApplicationContext: initialization completed in 2209 ms 
2017-10-20 14:02:17.517 INFO 11891 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Mapping servlet: 'dispatcherServlet' to [/] 
2017-10-20 14:02:17.522 INFO 11891 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [/*] 
2017-10-20 14:02:17.522 INFO 11891 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*] 
2017-10-20 14:02:17.522 INFO 11891 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'httpPutFormContentFilter' to: [/*] 
2017-10-20 14:02:17.522 INFO 11891 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'requestContextFilter' to: [/*] 
2017-10-20 14:02:17.522 INFO 11891 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'webRequestLoggingFilter' to: [/*] 
2017-10-20 14:02:17.743 INFO 11891 --- [   main] com.zaxxer.hikari.HikariDataSource  : testdb - Starting... 
2017-10-20 14:02:17.875 INFO 11891 --- [   main] com.zaxxer.hikari.HikariDataSource  : testdb - Start completed. 
2017-10-20 14:02:17.942 INFO 11891 --- [   main] j.LocalContainerEntityManagerFactoryBean : Building JPA container EntityManagerFactory for persistence unit 'default' 
2017-10-20 14:02:17.968 INFO 11891 --- [   main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [ 
    name: default 
    ...] 
2017-10-20 14:02:18.073 INFO 11891 --- [   main] org.hibernate.Version     : HHH000412: Hibernate Core {5.2.11.Final} 
2017-10-20 14:02:18.074 INFO 11891 --- [   main] org.hibernate.cfg.Environment   : HHH000206: hibernate.properties not found 
2017-10-20 14:02:18.094 WARN 11891 --- [   main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: 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 
2017-10-20 14:02:18.095 INFO 11891 --- [   main] com.zaxxer.hikari.HikariDataSource  : testdb - Shutdown initiated... 
2017-10-20 14:02:18.100 INFO 11891 --- [   main] com.zaxxer.hikari.HikariDataSource  : testdb - Shutdown completed. 
2017-10-20 14:02:18.102 INFO 11891 --- [   main] o.apache.catalina.core.StandardService : Stopping service [Tomcat] 
2017-10-20 14:02:18.122 INFO 11891 --- [   main] utoConfigurationReportLoggingInitializer : 

Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled. 
2017-10-20 14:02:18.129 ERROR 11891 --- [   main] o.s.boot.SpringApplication    : Application startup failed 

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:1704) ~[spring-beans-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:583) ~[spring-beans-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:502) ~[spring-beans-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:312) ~[spring-beans-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) ~[spring-beans-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:310) ~[spring-beans-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) ~[spring-beans-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1083) ~[spring-context-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:858) ~[spring-context-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549) ~[spring-context-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:122) ~[spring-boot-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT] 
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750) [spring-boot-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT] 
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:386) [spring-boot-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT] 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:327) [spring-boot-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT] 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1245) [spring-boot-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT] 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1233) [spring-boot-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT] 
    at com.example.clement.spring5webapp.Spring5webappApplication.main(Spring5webappApplication.java:10) [classes/:na] 
    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:564) ~[na:na] 
    at org.springframework.boot.maven.AbstractRunMojo$LaunchRunner.run(AbstractRunMojo.java:496) [spring-boot-maven-plugin-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT] 
    at java.base/java.lang.Thread.run(Thread.java:844) [na:na] 
Caused by: java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException 
    at org.hibernate.boot.spi.XmlMappingBinderAccess.<init>(XmlMappingBinderAccess.java:43) ~[hibernate-core-5.2.11.Final.jar:5.2.11.Final] 
    at org.hibernate.boot.MetadataSources.<init>(MetadataSources.java:87) ~[hibernate-core-5.2.11.Final.jar:5.2.11.Final] 
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:208) ~[hibernate-core-5.2.11.Final.jar:5.2.11.Final] 
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:163) ~[hibernate-core-5.2.11.Final.jar:5.2.11.Final] 
    at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:51) ~[spring-orm-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:358) ~[spring-orm-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:384) ~[spring-orm-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:373) ~[spring-orm-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1763) ~[spring-beans-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1700) ~[spring-beans-5.0.1.BUILD-SNAPSHOT.jar:5.0.1.BUILD-SNAPSHOT] 
    ... 22 common frames omitted 
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException 
    at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:466) ~[na:na] 
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:563) ~[na:na] 
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496) ~[na:na] 
    ... 32 common frames omitted 

[WARNING] 
java.lang.reflect.InvocationTargetException 
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.base/java.lang.reflect.Method.invoke(Method.java:564) 
    at org.springframework.boot.maven.AbstractRunMojo$LaunchRunner.run(AbstractRunMojo.java:496) 
    at java.base/java.lang.Thread.run(Thread.java:844) 
Caused by: 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:1704) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:583) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:502) 
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:312) 
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) 
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:310) 
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) 
    at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1083) 
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:858) 
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549) 
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:122) 
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750) 
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:386) 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:327) 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1245) 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1233) 
    at com.example.clement.spring5webapp.Spring5webappApplication.main(Spring5webappApplication.java:10) 
    ... 6 more 
Caused by: java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException 
    at org.hibernate.boot.spi.XmlMappingBinderAccess.<init>(XmlMappingBinderAccess.java:43) 
    at org.hibernate.boot.MetadataSources.<init>(MetadataSources.java:87) 
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:208) 
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:163) 
    at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:51) 
    at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:358) 
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:384) 
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:373) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1763) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1700) 
    ... 22 more 
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException 
    at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:466) 
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:563) 
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496) 
    ... 32 more 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD FAILURE 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 10.335 s 
[INFO] Finished at: 2017-10-20T14:02:18+13:00 
[INFO] Final Memory: 45M/149M 
[INFO] ------------------------------------------------------------------------ 
[ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.0.0.BUILD-SNAPSHOT:run (default-cli) on project spring5webapp: An exception occurred while running. null: InvocationTargetException: 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: javax.xml.bind.JAXBException -> [Help 1] 
+0

Utilisez-vous java 9? –

+0

ouais je suis. Dois-je revenir à 8? – Clement

Répondre

4

Je recréés votre configuration avec

spring init --dependencies=actuator,data-jpa,h2,thymeleaf,web spring5webapp 

Construire l'application nécessaire les modifications suivantes au pom.xml

<project> 
    <properties> 
     <java.version>1.9</java.version> 
    </properties> 
    <build> 
     <plugins> 
      <plugin> 
       <artifactId>maven-surefire-plugin</artifactId> 
       <version>2.20.1</version> 
       <configuration> 
        <argLine>--add-modules java.xml.bind</argLine> 
       </configuration> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-jar-plugin</artifactId> 
       <version>2.6</version> 
       <dependencies> 
        <dependency> 
         <groupId>org.codehaus.plexus</groupId> 
         <artifactId>plexus-archiver</artifactId> 
         <version>3.4</version> 
        </dependency> 
       </dependencies> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

Exécution mvn spring-boot:run a échoué avec l'erreur que vous avez dit ci-dessus. Mais ce qui suit résolu le problème:

<project> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
       <configuration> 
        <jvmArguments>--add-modules java.xml.bind</jvmArguments> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

Un problème est que java.xml.bind est maintenant en java.se.ee, pas java.base, donc j'ajouter le module explicitement. La partie maven-jar-plugin est un bug.

+0

doux! Merci beaucoup d'expliquer le problème en détail :) vraiment l'apprécier. Aide quelqu'un qui est nouveau à Java comme moi. – Clement