【问题标题】:unable to deploy spring boot app on tomcat [duplicate]无法在tomcat上部署spring boot应用程序[重复]
【发布时间】:2021-11-01 07:11:20
【问题描述】:

我试图在tomcat服务器上部署spring boot微服务,但无法得到任何响应。 url 显示 404 错误,然后我决定从非常基本的开始,所以我用Spring Boot Initializer 创建了一个简单的 Spring Boot 项目。我在那里选择

  • 战争作为包装。
  • java 版本 16(因为我的机器上只有这个)。
  • 添加了 Spring Web 依赖项。

使用此设置,spring 初始化程序会自动添加必要的东西,例如war packagingtomcat dependencyspring web dependency,并为我创建了ServletInitializer 类。 之后,我在netbeans 12 中打开了下载项目并进行了一些更改,即

  • pom.xml 文件中添加了带有<start-class> 标记的主类和带有@RestController 注释的主类,并公开了1 个返回简单字符串的端点。
  • 然后我从项目的主文件夹中运行了命令 mvn package 也尝试了 mvn clean install,因为使用第一个命令进行部署不成功。

这是我的配置
环境变量:
系统变量

  • CATALINA_HOME:D:\Inzimam Tariq\apache-tomcat-10.0.10
  • JAVA_HOME:C:\Program Files\Java\jdk-16.0.2
  • 路径变量中的相关值:C:\Program Files\Common Files\Oracle\Java\javapathD:\Inzimam Tariq\apache-maven-3.8.2\binC:\Program Files\Java\jdk-16.0.2\bin

用户变量

  • MAVEN_HOME:D:\Inzimam Tariq\apache-maven-3.8.2\bin

我使用的是 Windows 10 64 位。 Tomcat 管理器将应用程序显示为已部署,但是当我单击它时,它显示404。我的 JDK 文件夹没有显示 JRE 文件夹,所以我在互联网上搜索,发现 Java 现在不包含 JRE。我还尝试将我的 war 文件重命名为项目名称,因为一些文章建议使用 abc-0.0.1-SNAPSHOT 中的 abc.war,但错误仍然相同。

请有人指出我正确的方向吗?问候

【问题讨论】:

  • 尝试将其命名为ROOT.war。这行得通吗?
  • 您的应用程序中有索引页吗?你检查过tomcat日志(服务器和错误)吗?
  • @dan1st 它也不适用于ROOT.war
  • @aksappy 它是一个 rest api 应用程序,因此它有一个公共端点而不是索引页面
  • @PiotrP.Karwasz 让我试试 tomcat 9

标签: java spring-boot maven tomcat


【解决方案1】:

在 Tomcat 中部署您的项目 war 文件后,尝试在您的 POM.xml 文件中进行以下更改。然后重启你的tomcat。可能会奏效。

 <dependency>
            <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-starter-data-jpa</artifactId>    
                        <exclusions>
                        <exclusion>
                        <groupId>com.zaxxer</groupId>
                        <artifactId>HikariCP</artifactId>
                        </exclusion>
 </exclusions>
                </dependency>

                <dependency>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-starter-web</artifactId>         
                        <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                     <artifactId>spring-boot-starter-tomcat</artifactId>
                 </exclusion>
             </exclusions>
                </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>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-06
    • 1970-01-01
    • 2021-05-24
    • 1970-01-01
    • 1970-01-01
    • 2015-10-13
    • 2016-07-03
    • 2018-05-29
    相关资源
    最近更新 更多