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

26.IDEA 专业版中创建简单的 Web 项目并打包部署到本地Tomcat 9

IDEA 中创建简单的 Web 项目并打包部署到本地Tomcat 9

一、创建最简单的 Web 项目

1. 使用 IDEA 创建 Java Web 项目

  1. File → New → Project→ 选择Maven→ 勾选Create from archetype→ 选择maven-archetype-webapp(最简单结构,仅含index.jsp)。

    • GroupId:com.example
    • ArtifactId:simple-web
    • Version: Java 8 + Tomcat 9(兼容javax.servlet)。
  2. 项目结构

    simple-web/ ├── src/ │ └── main/ │ ├── resources/ │ └── webapp/ │ ├── WEB-INF/ │ │ └── web.xml (可选) │ └── index.jsp (默认首页) └── pom.xml


2. 配置pom.xml

确保packagingwar,并添加 Servlet API 依赖(provided作用域):

<packaging>war</packaging><dependencies><!-- Tomcat 9 使用 javax.servlet --><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>4.0.1</version><scope>provided</scope></dependency></dependencies><build><finalName>simple-web</finalName><!-- 指定 WAR 文件名 --></build>

3. 添加一个简单的 Servlet(可选)

如果希望用 Java 代码处理请求(而非仅 JSP),创建一个 Servlet:

  1. src/main/java下创建包com.example.web
  2. 添加HelloServlet.java
    packagecom.example.web;importjavax.servlet.annotation.WebServlet;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjava.io.IOException;@WebServlet("/hello")// 访问路径:http://localhost:8080/simple-web/hellopublicclassHelloServletextendsHttpServlet{@OverrideprotectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)throwsIOException{resp.getWriter().write("Hello from Servlet (Tomcat 9)!");}}
    • 注意:Tomcat 9 使用javax.servlet(Jakarta EE 9 之前)。

二、打包项目

1. 执行打包

  • 在 IDEA 右侧Maven 面板→ 选择Lifecycle → package
  • 或终端运行:
    mvn clean package
  • 生成simple-web.war文件在target/目录下。

三、部署到远程服务器的 Tomcat 9

1. 手动部署(备用方案)

  1. 上传 WAR 文件
    • 通过 SCP/SFTP 将target/simple-web.war复制到远程服务器的 Tomcat 的webapps/目录:
      scptarget/simple-web.war user@remote_ip:/path/to/tomcat/webapps/
    • Tomcat 会自动解压 WAR 文件(或重启 Tomcat 强制加载):
      ./bin/shutdown.sh ./bin/startup.sh

  1. 访问应用
    • 浏览器访问:http://remote_ip:8080/simple-web/(首页index.jsp)。
    • 如果配置了 Servlet,访问:http://remote_ip:8080/simple-web/hello

常见问题

  1. 403 访问拒绝
    • 检查tomcat-users.xml是否配置了manager-script角色。
    • 确保context.xml未限制远程访问。
  2. Servlet 404
    • 确认@WebServlet路径是否正确。
    • 检查 Tomcat 9 是否兼容javax.servlet(而非jakarta.servlet)。
  3. JDK 版本冲突
    • 确保远程服务器的 JDK 版本与本地开发环境一致。

通过以上步骤,你可以在 IDEA 中创建简单的 Web 项目并部署到远程 Tomcat 9。

http://www.cnnetsun.cn/news/131964.html

相关文章:

  • 激光雷达与摄像头不同步?深度解析多传感器时间同步校准难题
  • UE5卡通渲染革命:MooaToon带你实现电影级三渲二效果
  • 如何快速掌握Stable Diffusion WebUI Forge:面向用户的完整教程
  • 17、网络基础与操作指南
  • 元宇宙中的智能体交互难题:90%开发者忽略的延迟一致性陷阱
  • Unity内置着色器完整使用指南:从入门到精通
  • MCP与Azure量子协同容错设计,揭开企业级量子应用稳定性的秘密
  • 当JS拷贝玩起了“俄罗斯套娃”:深拷贝与浅拷贝的趣味对决
  • 北京创业省钱攻略!0 元注册公司不是梦
  • 行业标杆 | 越秀地产入选「2025年度数据湖仓应用创新先锋企业」
  • 云边 Agent 延迟优化全攻略(99%工程师忽略的底层机制曝光)
  • 【物流运输Agent路线优化】:揭秘智能路径调整背后的算法黑科技
  • 终于搞懂了!React Agent的实现思路原来这么简单,核心就这3步!
  • FLORIS风电场仿真终极指南:10个核心技巧快速掌握工程尾流模型
  • 工业HMI常见故障及排查方法:黑屏、通信中断、操作无响应,新手别慌
  • 55页PDF信息系统项目管理师考神笔记
  • 工业HMI的发展趋势:智能化、一体化、移动化,新手该怎么跟上?
  • 【高频卫星信号处理突破】:3步实现Agent端低延迟响应
  • 联想拯救者BIOS隐藏功能一键解锁:3分钟搞定高级设置终极教程
  • 从功能测试到自动化转型:测试工程师的进阶之路
  • 测试与开发的协同工作模式:从对立到共生的范式演进
  • VCAM安卓虚拟相机:打造你的专属视频魔法师
  • 抢占本地生活服务市场 开源可定制的跑腿平台源码推荐
  • 【物流量子 Agent 成本优化】:揭秘降低运营开支的5大核心技术策略
  • 企业微信Webhook Java SDK:从零构建智能消息推送系统
  • 跨境独立站+海淘代购运营指南
  • OPC-UA客户端终极实战指南:从零掌握工业数据交互
  • 从对话到共情,元宇宙Agent如何实现自然交互?
  • Windows与Linux环境兼容难题,MCP PL-600 Agent如何无缝部署?
  • (AZ-500云Agent深度研究):从注册流程到策略执行的完整技术链剖析