当前位置: 首页 > news >正文

IDEA 中 Tomcat 部署 Java Web 项目(2)

场景 2:非 Maven Java Web 项目部署(以 BookShop 为例)

1. 项目特征
  • 无 pom.xml,手动管理 jar 包(如 commons-codec-1.9.jar 放 WEB-INF/lib)。
  • 需手动配置项目结构、依赖、Web 模块,适合简单 Demo 或旧项目迁移。
2. 关键配置步骤
(1)Project Structure 全流程配置
  • 打开 File → Project Structure,按以下标签逐步配置:
    ① Project 标签(基础环境)
  • Name:项目名(如 BookShop)。
  • SDK:选 JDK 1.8
  • Language level:选 8 - Lambdas, type annotations

② Modules 标签(模块与依赖

选项目模块(如 BookShop):

  • Sources:标记 src 为源码目录(蓝色),test 为测试目录(绿色,可选)。
  • Dependencies:点击 + → JARS or directories,引入 WEB-INF/lib 下的所有 jar 包(如 commons-codec-1.9.jarmysql-connector-java-5.1.5.jar)。

③ Facets 标签(Web 模块识别)

点击 + → Web,关联项目的 web.xml(路径:WebContent/WEB-INF/web.xml):

  • 确认 Deployment Descriptors 中 web.xml 路径正确。
  • 配置 Web Resource Directories(如 WebContent 目录,作为静态资源根路径)。

④ Artifacts 标签(部署产物配置)

点击 + → Web Application: Exploded → From Modules...,选项目模块(如 BookShop):

  • 生成 BookShop:war exploded(解压后的 Web 应用目录,用于 Tomcat 部署)。
  • 检查 Output Layout,确保 WEB-INF/classes(编译输出)和 WEB-INF/lib(jar 包)已包含。

选中自己的项目

2)Tomcat Server 配置(与 Maven 项目类似)

顶部 Run → Edit Configurations → 新建 Tomcat Server → Local

  • Server 标签:同 Maven 项目(选 Tomcat 目录、JDK、端口)。
  • Deployment 标签
  • 点击 + → Artifact,选 BookShop:war exploded(非 Maven 项目的解压部署包)。
  • 热部署:同 Maven 项目(选 Update classes and resources)。

(3)启动验证

  • 启动 Tomcat 后,访问 http://localhost:8085/BookShop/(路径与 Application context 一致),验证页面或接口。
3.将项目部署到tomcat

   在idea部署项目之后会产生一个classes文件夹,找到里面的_war_exploded文件夹

复制到tomcat的webapps里

配置server.xml文件

  <Service name="Catalina1"><!-- 每个项目的端口号也要进行区分,保证不被占用 --><Connector port="8088" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" URLEncoding="UTF-8"/><!-- 这里的AJP端口同样也要进行区分 --><Connector port="8010" protocol="AJP/1.3" redirectPort="8443" secretRequired=""/><Engine name="Catalina1" defaultHost="localhost"><Realm className="org.apache.catalina.realm.LockOutRealm"><Realm className="org.apache.catalina.realm.UserDatabaseRealm"resourceName="UserDatabase"/></Realm><Host name="localhost"  appBase="webapps"unpackWARs="true" autoDeploy="true"><Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"prefix="localhost_access_log" suffix=".txt"pattern="%h %l %u %t &quot;%r&quot; %s %b" /><!-- 这里是想要部署的对应项目的名称 --><Context docBase="qcby2502_war_exploded" path="/" reloadable="true"/></Host></Engine></Service>

 启动tomcat,查看日志 8088端口启动成功

验证:

部署成功

http://www.dtcms.com/a/498835.html

相关文章:

  • [SCADE编译原理] 状态机到数据流的源到源翻译(2005)
  • 小迪安全v2023学习笔记(一百三十四讲)—— Windows权限提升篇数据库篇MySQLMSSQLOracle自动化项目
  • 2023年10月份04741计算机网络原理真题及答案
  • Room 概要
  • 元宇宙中的数字身份与数据主权:个体权益的守护与边界
  • 函数模板与类模板:C++泛型编程核心解析
  • [GO]Go语言包访问控制与导入机制
  • Flink细粒度滑动窗口性能优化与解决方案深度解析
  • Flink SQL 窗口函数详细
  • 成都网站建设的公司哪家好网站怎么推广出去
  • 【Go】--gin框架基本使用
  • [优选算法专题四.前缀和——NO.25一维前缀和]
  • openharmony之分布式相机开发:预览\拍照\编辑\同步\删除\分享教程
  • LeetCode 402 - 移掉 K 位数字
  • 皮卡丘XSS
  • 思维|栈
  • 关于网站建设方案的案例数码产品销售网站建设策划书
  • 2025年10月17日
  • Entity Framework Core和SqlSugar的区别,详细介绍
  • 【C语言】运算符
  • 网站备案帐号是什么菏泽微信小程序制作
  • 消息队列以及RabbitMQ的使用
  • PyCharm之服务器篇|Linux连接校园网Neu版
  • 在linux上训练深度学习环境配置(Ubuntu)
  • 洗车小程序系统
  • 网站 备案 营业执照太仓网站设计早晨设计
  • 煤矿网站建设WordPress高端主题 熊
  • 告别炼丹玄学:用元学习精准预测模型性能与数据需求,AWS AI Lab研究解读
  • 无需 VNC / 公网 IP!用 Docker-Webtop+cpolar,在手机浏览器远程操控 Linux
  • Vue3与Cesium:轻量版3D地理可视化实践