【发布时间】:2018-08-03 16:31:41
【问题描述】:
我使用 Eclipse 中的 Spring Dashboard 创建项目。我也尝试使用 Spring Initializr 创建它,并尝试了 Java 的 8 和 9 版本,但我仍然得到这个。还尝试更改 Maven 目标。运行配置,maven build使用的是JavaSE1.8,jre 1.8.0。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.RC2</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>9</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
命令:
javac version: 9.0.4
Apache Maven 3.5.2
Maven home: C:\Users\arito\Desktop\apache-maven-3.5.2\bin\..
Java version: 1.8.0_152, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk1.8.0_152\jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
【问题讨论】:
-
您必须将 JAVA_HOME 指向 JDK 9,但似乎它指向 jdk 1.8: Java home: C:\Program Files\Java\jdk1.8.0_152\jre - 是在“mvn -v”输出?
-
是的,我已经做到了。错误消失了。现在我得到 [ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.0.0.RC2:run (default-cli) on project spring5-recipe-assigment-master: An运行时发生异常。 null:InvocationTargetException:在类路径资源[org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]中定义名称为“entityManagerFactory”的bean创建错误:调用init方法失败;嵌套异常是 java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException: javax.xml.bind.JAXBException
-
这是一个依赖/java 9 模块问题,使用搜索可以回答;)看看这个:stackoverflow.com/questions/43574426/…
-
对我来说,将 java-version 更改为 8 有效,它在错误中说是 9