Java 新Spring项目构建失败
我对春天完全是个初学者。我已经安装了jdk和mavenJava 新Spring项目构建失败,java,spring,maven,spring-mvc,intellij-idea,Java,Spring,Maven,Spring Mvc,Intellij Idea,我对春天完全是个初学者。我已经安装了jdk和maven echo$JAVA\u HOME显示: /Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home javac 9.0.4 Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T08:58:13+01:00) Maven home: /usr/local/Cellar/maven/3
echo$JAVA\u HOME
显示:
/Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home
javac 9.0.4
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T08:58:13+01:00)
Maven home: /usr/local/Cellar/maven/3.5.2/libexec
Java version: 9.0.4, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home
Default locale: en_GB, platform encoding: UTF-8
OS name: "mac os x", version: "10.13.2", arch: "x86_64", family: "mac"
$javac-version
显示:
/Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home
javac 9.0.4
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T08:58:13+01:00)
Maven home: /usr/local/Cellar/maven/3.5.2/libexec
Java version: 9.0.4, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home
Default locale: en_GB, platform encoding: UTF-8
OS name: "mac os x", version: "10.13.2", arch: "x86_64", family: "mac"
mvn-版本
显示:
/Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home
javac 9.0.4
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T08:58:13+01:00)
Maven home: /usr/local/Cellar/maven/3.5.2/libexec
Java version: 9.0.4, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home
Default locale: en_GB, platform encoding: UTF-8
OS name: "mac os x", version: "10.13.2", arch: "x86_64", family: "mac"
到目前为止,我所做的唯一一件事就是创建一个名为“controller”的包,其中包含一个“HomeController.java”文件,代码如下:
package com.demo.spring.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@Controller
public class HomeController {
@RequestMapping(value = "/", method = RequestMethod.GET)
public String index(){
return "Hello World.";
}
}
但是当我执行mvn spring boot:run时,我得到:
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.561 s
[INFO] Finished at: 2018-01-17T13:28:14Z
[INFO] Final Memory: 25M/83M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:1.5.9.RELEASE:run (default-cli) on project demo: Could not exec java: Application finished with exit code: 1 -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
我以前没有接触过spring,所以我安装了jdk(通过java网站)和maven(通过自制),并按照教程在intellij中设置spring应用程序,我不知道我做错了什么/没有做什么。我看到错误引用无法执行java,提供的链接表明这是一个插件问题,但我如何解决这个问题
pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.demo.spring</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>demo-spring</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</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>1.8</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>
</project>
4.0.0
com.demo.spring
您当前的jdk版本是1.9.0,但在pom.xml中它指向1.8,所以您需要将该版本更改为1.9
下面是你的版本
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
UTF-8
UTF-8
1.8
将其更改为1.9
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.9</java.version>
</properties>
then try to run below command
mvn clean spring-boot:run
UTF-8
UTF-8
1.9
然后尝试运行下面的命令
mvn clean spring启动:运行
您当前的jdk版本是1.9.0,但在pom.xml中它指向1.8,所以您需要将该版本更改为1.9
下面是你的版本
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
UTF-8
UTF-8
1.8
将其更改为1.9
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.9</java.version>
</properties>
then try to run below command
mvn clean spring-boot:run
UTF-8
UTF-8
1.9
然后尝试运行下面的命令
mvn clean spring启动:运行
我认为所有这些错误都与Java 9有关
Maven建议对Java 9进行一些更改,可能您可以像这样使用它们:
添加Java 9作为属性:
对于编译失败,请修复maven编译器插件:
对于测试失败,修复maven surefire插件
对于打包失败,修复maven jar插件(可选)
对于Spring引导插件故障,修复Spring引导maven插件
有关更多信息,请访问博客。我认为所有这些错误都与Java9有关
Maven建议对Java 9进行一些更改,可能您可以像这样使用它们:
添加Java 9作为属性:
对于编译失败,请修复maven编译器插件:
对于测试失败,修复maven surefire插件
对于打包失败,修复maven jar插件(可选)
对于Spring引导插件故障,修复Spring引导maven插件
有关更多信息,请访问博客。您在这里尝试过解决方案吗?这个问题听起来很相似,请发布您的项目结构。您需要下载依赖项。我添加了pom和文件结构的图像。Dipak您能进一步解释吗?您在这里尝试过解决方案吗?这个问题听起来很相似,请发布您的项目结构。您需要下载依赖项。我添加了pom和文件结构的图像。Dipak您能进一步解释一下吗?我将pom中的版本更新为1.9,并进行了mvn清理安装
并获得[错误]未能在project demo上执行目标org.apache.maven.plugins:maven surefire plugin:2.18.1:test(默认测试):存在测试失败。
它引用的文件太大。但在顶部状态下,测试运行:1,失败:0,错误:1,跳过:0,时间:2.553秒转到项目目录并尝试运行mvn clean install命令,正如我所说,它告诉我错误[error]未能执行目标org.apache.maven.plugins:maven surefire plugin:2.18.1:test(默认测试)在项目演示中:有测试失败。
我当然会回复消息。它工作得很好。我还做了mvn clean install-U
,我读到它会处理依赖关系。仍然是相同的错误消息thoughI将pom中的版本更新为1.9,并进行了mvn clean安装
,并且获得了[error]无法执行goal org.apache.maven.plugins:maven surefire plugin:2.18.1:project demo上的测试(默认测试):有测试失败。
它引用的文件非常大。但在顶部状态下,测试运行:1,失败:0,错误:1,跳过:0,时间:2.553秒转到项目目录并尝试运行mvn clean install命令,正如我所说,它告诉我错误[error]未能执行目标org.apache.maven.plugins:maven surefire plugin:2.18.1:test(默认测试)在项目演示中:有测试失败。
我当然会回复消息。它工作得很好。我还做了mvn clean install-U
,我读到它会处理依赖关系。仍然是相同的错误消息,但谢谢您。它解决了所有它详细描述的错误,直到最后一点——在这里我做了mvn-spring-boot:run
。我想我只是要卸载java并安装1.8,然后从那里开始。谢谢你。它解决了所有它详细描述的错误,直到最后一点——在这里我做了mvn-spring-boot:run
。我想我只是要卸载java并安装1.8,然后从那里开始。