news 2026/9/2 9:38:32

JavaWeb项目打包、部署至Tomcat并启动的全程指南(图文详解)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
JavaWeb项目打包、部署至Tomcat并启动的全程指南(图文详解)

前言

我们想要部署一个javaWeb项目到tomcat上,需要了解一些概念

什么是tomcat?

Tomcat 是 Apache 软件基金会(Apache Software Foundation)下的一个开源项目,主要用于实现 Java Servlet、JavaServer Pages(JSP)、Java Expression Language(JSTL)、Java WebSocket 技术以及 Java API for WebSocket 的容器。简而言之,Tomcat 是一个 Web 应用服务器(也称为 Servlet 容器),它主要用于在服务器上运行 Java 编写的 Web 应用程序。

Tomcat 提供了对 Servlet 和 JSP 的支持,使得开发者能够编写出功能强大的交互式 Web 应用程序。Servlet 是一种运行在服务器上的 Java 应用程序,它主要用于处理客户端的请求并返回响应;而 JSP 是一种用于创建动态网页内容的技术,它允许将 Java 代码嵌入到 HTML 页面中。

Tomcat 通常被部署在服务器上,用于运行 Web 应用程序。开发者可以在本地计算机上安装 Tomcat 以进行开发和测试,然后将应用程序部署到生产环境中的 Tomcat 服务器上,以提供给最终用户使用。

什么是maven项目?

maven是管理和构建java项目的工具,JavaWeb项目时在maven项目的基础上进行创建的。

maven中最重要的就是pom.xml配置文件,通过一小段描述来管理和构建java项目

创建一个Javaweb项目

使用idea继承开发环境创建第一个JavaWeb程序(前提:已经在idea配置了maven)

打开idea–>点击New Project

项目结构如下:

此时,已经创建了一个基本的JavaWeb项目,只不过此时不包含任何东西,如何创建Servlet等操作,这里不在赘述,直接演示如何打包JavaWeb项目,在Tomcat服务器运行

打包JavaWeb项目

JavaWeb项目打包成war包

在Maven项目中,将项目打包成WAR(Web Application Archive)包是一个常见的需求,特别是在开发Web应用程序时。WAR包是一个包含了所有Servlet类文件、JSP文件、Java类库、资源文件(如图片和HTML)以及Web页面所需的META-INF/和WEB-INF/目录的JAR文件。Maven通过其maven-war-plugin插件来支持WAR包的打包。

以下是将Maven项目打包成WAR包的基本步骤:

1. 检查pom.xml文件

首先,确保你的pom.xml文件中包含了正确的打包类型。对于Web应用程序,你通常不需要显式设置<packaging>元素,因为Maven默认将pom.xml中带有<webappDirectory>或包含Web资源目录(如src/main/webapp)的项目视为WAR包项目。但如果你需要明确指定,可以添加如下配置:

<packaging>war</packaging>

2. 配置maven-war-plugin

尽管Maven的默认配置通常足以生成WAR包,但有时你可能需要自定义WAR包的某些方面。这时,你可以在pom.xml中配置maven-war-plugin。(如果不配置war插件的版本,在tomcat无法运行)以下是一个简单的配置示例:

<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>3.3.2</version> <!-- 请使用最新的稳定版本 --> <configuration> <!-- 自定义WAR包的名称 --> <warName>web/warName> <!-- 其他配置... --> </configuration> </plugin> </plugins> </build>

执行完以上操作后,记得重新加载POM.XML文件更新

3. 打包maven项目

找到Maven的生命周期插件,双击package进行打包

4. 启动tomcat

在本地资源管理器打开项目,找到我们打包后的war包 ,把它放在tomcat的webapps目录下:

双击tomcat的bin目录下的startup.bat命令,启动本地的tomcat服务器,如下所示:

如果出现中文乱码,是字符编码集出现不匹配导致,不会影响项目的运行

tomcat启动完成后,会自动解压我们的war包:

此时直接在浏览器测试:

1.查看tomcat是否启动成功:

访问localhost:8080出现如下页面,tomcat启动成功

2.查看JavaWeb项目是否启动成功:

此时需要带上我们定义的项目名路径:这里我设置成了web(可以任意设置,不要出现非法字符)

因为没有写任何内容,会直接访问默认首页:(即index.jsp中的HTML页面)

访问成功!(这表示JavaWeb项目部署成功!)

总结

本博客主要是为了介绍如何将一个JavaWeb项目打包成war包,并且部署到tomcat服务器上,并没有书写Servlet和JSP等内容,目的是为了快速了解tomcat部署Java项目的全部流程。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/26 5:02:17

导师推荐!专科生必看8个AI论文平台测评与推荐

导师推荐&#xff01;专科生必看8个AI论文平台测评与推荐 2026年专科生AI论文平台测评&#xff1a;为何值得一看&#xff1f; 随着人工智能技术的不断进步&#xff0c;AI论文平台已成为越来越多专科生撰写论文的重要工具。然而&#xff0c;面对市场上琳琅满目的选择&#xff0c…

作者头像 李华
网站建设 2026/8/31 20:36:52

Agent 成新基建,2030 年渗透率 90%,7 大赛道 + 标杆厂商深度拆解

前言 当生成式 AI 从 “内容工具” 进化为 “自主执行者”&#xff0c;智能体&#xff08;Agent&#xff09;正以国家战略为背书&#xff0c;掀起一场生产力革命。国务院《关于深入实施 “人工智能 ” 行动的意见》明确将其列为 “新基础设施”&#xff0c;硬性要求 2027 年应用…

作者头像 李华
网站建设 2026/9/2 23:01:57

交通仿真软件:Aimsun_(7).信号控制与优化

信号控制与优化 1. 信号控制的基本概念 信号控制是交通仿真中一个重要的组成部分&#xff0c;它通过控制交通信号灯的切换时间来优化交通流量。在Aimsun中&#xff0c;信号控制可以通过多种方式实现&#xff0c;包括固定时间信号控制、自适应信号控制和基于优化模型的信号控制。…

作者头像 李华
网站建设 2026/8/24 18:34:51

揭秘 Spring Boot 事务:动态增强的底层实现与核心组件

在分布式系统和复杂业务场景中&#xff0c;事务管理是保障数据一致性的核心技术之一。Spring Boot 提供的声明式事务机制&#xff0c;通过 “动态” 方式简化了事务配置&#xff0c;让开发者无需手动编写事务控制代码&#xff0c;仅通过简单注解即可实现事务管理。本文将从 “问…

作者头像 李华
网站建设 2026/9/2 22:15:23

ES在SpringBoot集成使用

1. 在Docker中安装Elasticsearch 这里不了解docker甚至还没安装虚拟机的小伙伴可以去黑马的视频下找到资源&#xff0c;去下一个虚拟机 这里就不对ES进行过多介绍了&#xff0c;具体的效果去b站看看叭&#xff0c;这里直接速成使用 安装ES并启动 docker pull elasticsearch &l…

作者头像 李华
网站建设 2026/8/25 7:27:14

基于微信小程序的新鲜到家生鲜超市销售系统(毕设源码+文档)

课题说明本课题聚焦基于微信小程序的新鲜到家生鲜超市销售系统的设计与实现&#xff0c;核心目标是解决传统生鲜超市销售中线下客流有限、商品展示不全面、订单处理效率低、配送调度混乱、生鲜保鲜追溯难及用户购物体验差等痛点问题。系统深度依托微信小程序生态优势&#xff0…

作者头像 李华