spring boot-jsp项目main启动出现process finished with exit code 0 错误

百度有人说是因为pom.xml中缺少web的依赖,但是我pom.xml是有这个web的依赖的,而以前的话,这个项目是可以启动的,但现在却无法启动,只能是用war的方式部署到tomcat才行,可是我需要的是用main的方式一键启动。

然后突然想到了spring boot已经出到了2.0了,我想会不会是版本过老了,版本号是1.4.7;

我就只发成功的demo吧,有需要的可以参考一下,不当之处欢迎批评指点.

启动器:

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class ApplicationTest {

   public static void main(String[] args) {
      SpringApplication.run(ApplicationTest.class, args);
   }

}

application.properties:

spring.mvc.view.prefix=/WEB-INF/jsp/

spring.mvc.view.suffix=.jsp


controller:

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@RequestMapping("/jsp")
@Controller
public class JspTestController {

   @RequestMapping("/test")
   public ModelAndView test() {
      //视图需要根据application.properties中配置的路径下存在
      ModelAndView mv = new ModelAndView("test");
      
      mv.addObject("msg", "数据来自后台...");
      
      return mv;
   }
}

jsp(注意路径:WEB-INF/jsp/test.jsp):

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
${msg }
</body>
</html>

pom.xml:

<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>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.0.RELEASE</version>
    </parent>
   <groupId>cn.itcast.springboot</groupId>
   <artifactId>spring-boot-04-view-jsp</artifactId>
   <version>0.0.1-SNAPSHOT</version>
   <packaging>war</packaging>
   <!-- 配置jdk版本 -->
   <properties>
      <java.version>1.8</java.version>
   </properties>

   <dependencies>
      <!-- web应用启动器 -->
      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-web</artifactId>
      </dependency>

      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-tomcat</artifactId>
         <scope>provided</scope>
      </dependency>

      <!-- servlet依赖. -->
      <dependency>
         <groupId>javax.servlet</groupId>
         <artifactId>javax.servlet-api</artifactId>
         <scope>provided</scope>
      </dependency>

      <dependency>
         <groupId>javax.servlet</groupId>
         <artifactId>jstl</artifactId>
      </dependency>

      <!-- 使用引导类启动时候也可以访问jsp视图;不然只能打出war部署到tomcat下才能访问 -->
      <dependency>
         <groupId>org.apache.tomcat.embed</groupId>
         <artifactId>tomcat-embed-jasper</artifactId>
      </dependency>

   </dependencies>

    <repositories>
        <repository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>https://repo.spring.io/libs-snapshot</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
</project>

猜你喜欢

转载自blog.csdn.net/hunwanjie/article/details/80910171