首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Coding
V2EX  ›  Java

Springboot 问题请教

  •  
  •   Suaxi · 22 天前 · 1227 次点击

    项目在 idea 里运行一切都正常,唯独打包之后启动 Tomcat 就会报错,比如说修改用户信息,点击修改就提示 404,页面不存在,检查之后路径都是正常的,放在服务器上也是这个问题,回头去排查发现 package 时的测试报错,改正之后问题依旧,请带哥帮我看下是不是 pom 里面的配置问题

    <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 https://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.2.1.RELEASE</version> <relativepath> </relativepath></parent> <groupid>com.sw</groupid> <artifactid>yundcc</artifactid> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <name>yundcc</name> <description>Demo project for Spring Boot</description></project>

    <properties>
        <java.version>1.8</java.version>
    </properties>
    
    <dependencies>
        <!-- 添加 servlet 依赖模块 -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <scope>provided</scope>
        </dependency>
        <!-- 添加 jstl 标签库依赖模块 -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
        </dependency>
    
        <!-- 使用 jsp 引擎,springboot 内置 tomcat 没有此依赖 -->
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-jasper</artifactId>
            <scope>provided</scope>
        </dependency>
    
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.37</version>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>
    
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                    <skipTests>true</skipTests>
                </configuration>
            </plugin>
        </plugins>
    </build>
    
    15 回复  |  直到 2019-11-25 12:56:54 +08:00
        1
    Suaxi   22 天前
    忘了说数据库连接都没问题,唯独打包之后运行就会报 404
        2
    CoderGeek   22 天前
    <scope>provided</scope>
        3
    yejianmail   22 天前 via Android
    你是怎么部署的,打成 jar 直接执行,还是打成 war 包,放 tomcat 里执行的,依据经验需要在 pom 里指明 jsp 路径路径打包到指定路径下,手机回复不是很方便去翻项目,见谅
        4
    Suaxi   22 天前
    @yejianmail war 包,好的,谢谢
        5
    IamNotShady   22 天前
    springboot 集成 JSP 有坑 官方文档上写的不支持 但是也可以集成 之前搞过一次 不着急明天找下之前的项目给你看看
        6
    IamNotShady   22 天前
    我记得之前集成放到 tomcat 也是有问题 最后用的是它内嵌的 tomcat
        7
    Suaxi   22 天前 via iPhone
    @IamNotShady 好多,谢谢哈,下午的时候去找专业课老师,给他头都搞大了也没弄好😂
        8
    Suaxi   22 天前 via iPhone
    @CoderGeek 加了这个还是一样的问题,下面有个老哥说是 springboot 集成 jsp 的问题,明天再看看
        9
    zzxCNCZ   22 天前
    在 idea 里是用内置的,你直接用 jar 运行试试,看能不能运行
        10
    Suaxi   22 天前 via iPhone
    @zzxCNCZ jar 还没试,war 包能正常运行,但是 404 的时候 tomcat 里没有报错信息;现在找到了问题是添加的 tomcat 依赖下面的<scope>要注释掉,同时也把 model 的路径改到了 webapp/WEB-INF/jsp 下,但还是同样的问题,不知道应该怎么改了
        11
    w292614191   22 天前
    我之前也钟情 war 包,然后 Tomcat 发布,然后各种疑难杂症,也是脑壳痛,放弃之。
    server.servlet.context-path=xxx
    这个配置有吗?
        12
    Suaxi   22 天前 via iPhone
    @w292614191 没加这个,用了 jsp 标签、项目全路径引用${ctx}解决了
        13
    jack80342   18 天前
    这是我翻译的《 Spring Boot 参考指南》,你可以看看
        14
    jack80342   18 天前   ♥ 1
    忘记发链接了😓,这是链接:github.com/jack80342/Spring-Boot-Reference-Guide
        15
    Suaxi   16 天前 via iPhone
    @jack80342 感谢
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2598 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 29ms · UTC 13:51 · PVG 21:51 · LAX 05:51 · JFK 08:51
    ♥ Do have faith in what you're doing.