【发布时间】:2021-11-01 07:11:20
【问题描述】:
我试图在tomcat服务器上部署spring boot微服务,但无法得到任何响应。 url 显示 404 错误,然后我决定从非常基本的开始,所以我用Spring Boot Initializer 创建了一个简单的 Spring Boot 项目。我在那里选择
- 战争作为包装。
- java 版本 16(因为我的机器上只有这个)。
- 添加了 Spring Web 依赖项。
使用此设置,spring 初始化程序会自动添加必要的东西,例如war packaging、tomcat dependency、spring 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\javapath、D:\Inzimam Tariq\apache-maven-3.8.2\bin和C:\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