SpringBoot+jsp项目启动出现404

 阅读约 4 分钟
通过maven创建springboot项目启动出现404
  • application.properties配置
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
  • 项目结构

  • 控制器方法
package com.example.demo.controller;

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

@Controller
public class IndexController {

    @RequestMapping("/")
    public String index() {
        return "index";
    }
}
  • 启动项目访问localhost:8080,出现404
Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.

Thu Feb 28 22:59:29 CST 2019
There was an unexpected error (type=Not Found, status=404).
No message available

解决方法

  • pom.xml添加依赖
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
</dependency>
  • clean并刷新maven

  • 重启并访问localhost:8080

打包为jar运行仍然出现404

  • 打包插件版本设置为1.4.2.RELEASE,并且配置好资源目录
<build>
    <resources>
        <resource>
            <directory>src/main/webapp</directory>
            <!--这里必须是META-INF/resources-->
            <targetPath>META-INF/resources</targetPath>
            <includes>
                <include>**/**</include>
            </includes>
            <filtering>false</filtering>
        </resource>
    </resources>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>1.4.2.RELEASE</version>
        </plugin>
    </plugins>
</build>
阅读 3.2k更新于 2019-03-01

推荐阅读
Web小李飞刀
用户专栏

专注web编程技术分享,大白话教程!

0 人关注
8 篇文章
专栏主页
目录