2024.1版IDEA配置tomcat环境踩坑实录

本文详细描述了在最新版IDEA中配置Tomcat环境的挑战,包括版本差异导致的功能缺失,以及通过命令行启动Tomcat作为替代方案的简洁流程。作者分享了配置过程中遇到的问题和解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载自原文:http://zhenyutongxue.com/index.php/default/tomcat_0.html

为了完成Java课的实验四,尝试在IDEA中配置tomcat环境。由于2024新版IDEA对界面选项有一定改动,参考网上教程建立tomcat项目十分困难,故特此记录踩坑过程!
注:如果你只是准备简单写个tomcat项目,之后没有深入学习Java后端开发的打算,强烈建议直接通过命令行启动tomcat(启动方式见后文),没必要在IDEA中配置tomcat环境!

IDEA中配置tomcat环境

废话不多说,这边直接上IDEA Ultimate中配置tomcat环境的动图(注意,必须下载IDEA Ultimate和tomcat,并配置好tomcat的环境变量)
IDEA中配置tomcat环境

如果提示8080端口已经被占用,可以通过taskkill命令强行删进程(先通过netstat指令查找绑定了8080端口的进程,再用taskkill删除该进程即可),截图如下:
taskkill删除进程

// 到这里已经把最终的解决方案呈现清楚了,下文为踩坑过程和命令行启动tomcat的介绍qwq

踩坑过程

作业要求如下:
Java作业

你可能的一种踩坑路径如下:

  1. 你尝试跟着b站教程在IDEA中配置tomcat环境
  2. 你发现教程要求新建Java Enterprise项目,但是你的IDEA中没有这个选项
  3. 你去网上搜索相关的解决方案,你了解到,Java Enterprise 选项可以通过修改IDEA注册表调出来
  4. 你十分开心,尝试跟着教程操作,但你无奈地发现,你的IDEA注册表里没有 javaee.legacy.project.wizard 这一选项
  5. 你只好继续在网上搜解决方案,并了解到,通过右键项目文件夹,选择“添加框架支持”同样可以给项目添加web支持
  6. 你尝试进行这一操作,但你惊奇地发现,你的IDEA的项目文件夹右键后竟然没有这个选项
  7. 你十分无奈,继续搜索解决方案
  8. 你了解到,菜单栏的“帮助”选项中,选择“查找操作”选项(快捷键ctrl+shift+A),可以搜索到“添加框架支持”选项
  9. 你尝试之后,绝望地发现,你的“添加框架支持”页面中,没有教程中给出的 Java EE->Web Application 选项
  10. 你百般无奈,继续搜索解决方案
  11. 你偶然了解到,IDEA Community版本是不提供Java EE的,你抱着试一试的心态,下载了IDEA Ultimate
  12. 为了用到IDEA Ultimate,你申请了30天试用体验
  13. 你打开新下好的IDEA Ultimate,尝试新建一个项目,不出所料,还是没有Java Enterprise选项
  14. 但是,你已经身经百战了。你丝毫不慌,按下快捷键ctrl+shift+a,并进入“添加框架支持”页面
  15. 皇天不负有心人,IDEA Ultimate 真的提供了Java EE支持,你选择Java EE->Web Application,为你的项目添加了web支持
  16. 你跟着教程继续往下走,从菜单栏选择 Run->Edit Configurations,并选择TomEE Server->Local,为你的项目添加了tomcat支持
  17. 这时,你老早就下好的tomcat(并配好了环境变量)终于能用上了,你的IDEA正常检测出了你下载的tomcat,你简单在你的IDEA中配置了一下你的tomcat设置
  18. 这时,理论上你的tomcat环境已经配好了,你尝试在你项目的src目录下建了一个index.jsp页面,并参照教程中的语法写了个hello world
  19. 你满怀期待得运行项目,不出意外,意外出现了,IDEA提示8080端口已被占用(很可能是因为你刚刚写了Java实验三!),项目无法启动
  20. 你发现Java实验四后面本来就要把8080端口改成88端口,于是你索性提前试着改端口号
  21. 不知道为什么,你的尝试失败了,但你没有放弃,你直接通过taskkill指令强行关闭了绑定8080端口的进程!
  22. 你满怀期待地运行项目,一个chrome网页顺利弹出,但你绝望地发现,hello world没能正常显示出来,网页显示的内容是“ E N D END END
  23. 你绝望地继续搜解决方案,无果
  24. 你回顾之前看的tomcat教程,惊奇地发现jsp文件应该建在web目录下,而不是src目录下!因为之前写得所有Java代码都是把源文件放在src目录下,所以你看教程的时候没注意到这个细节!网页之所以显示“ E N D END END”是因为web目录下有一个默认的index.jsp,其要显示的内容就是“ E N D END END
  25. 你删掉默认的index.jsp,将你写好的index.jsp从src目录移到web目录,并重新运行项目

一行大大的Hello World在屏幕上显示出来,你默默地看了一眼屏幕右下角:又是美好的一天

命令行启动tomcat

假如你没有IDE就写不出程序,那么你就不配使用IDE!

上文踩坑过程很大程度是因为过分依赖IDE。其实,只要绕过在IDE中配置环境这一层,通过命令行启动tomcat,你可以很容易地写出一个JSP的Hello World。

具体操作如下(内容由GPT生成,亲测有效):

  1. 下载和安装 Tomcat:按照前面提到的步骤下载和安装 Tomcat。

  2. 创建一个新的 JSP 项目

    • 打开命令行界面。
    • 导航到 Tomcat 的 webapps 目录。
      cd /path/to/tomcat/webapps
      
    • 创建一个新的目录作为你的项目名称,例如 myjspproject
      mkdir myjspproject
      
    • 进入该目录。
      cd myjspproject
      
    • 在该目录下创建你的 JSP 文件,例如 index.jsp
      vim index.jsp
      
      (Windows系统下直接在资源管理器中建文件就行了)
  3. 编辑 JSP 文件

    • 使用文本编辑器(如 Vim、Nano、Notepad++ 等)打开 index.jsp 文件,编写你的 JSP 代码。
  4. 启动 Tomcat

    • 返回到 Tomcat 的 bin 目录。
    • 启动 Tomcat,按照前面提到的方法执行启动脚本。
      startup.bat    (Windows)
      ./startup.sh   (Unix/Linux)
      
  5. 验证项目是否可访问

    • 打开一个 Web 浏览器。
    • 访问 http://localhost:8080/myjspproject/index.jsp,其中 myjspproject 是你创建的项目名称,index.jsp 是你创建的 JSP 文件名。
    • 如果一切正常,应该能够看到你编写的 JSP 页面的内容。

这样,你就成功地通过命令行创建了一个简单的 JSP 项目,并且在 Tomcat 中启动了它。

### 配置 IntelliJ IDEA 2024 使用 Tomcat 服务器 #### 准备工作 确保已安装 IntelliJ IDEA 2024 并拥有 Apache Tomcat 的本地副本。TomcatJava 应用程序广泛使用的 Servlet 容器。 #### 添加应用服务器 在 IntelliJ IDEA 中设置 Tomcat 作为应用服务器是第一步。通过 `File` 菜单进入 `Settings` 或者对于 macOS 用户来说则是 `IntelliJ IDEA | Preferences`,之后导航到 `Build, Execution, Deployment | Application Servers`[^1]。在此界面中点击加号 (`+`) 来添加新的服务器实例,并选择 `Tomcat Server`。指定 Tomcat 的安装目录来完成配置过程。 #### 创建运行/调试配置 为了使项目能够部署至 Tomcat 上执行或调试,需创建相应的配置文件: - 前往 `Run | Edit Configurations...`。 - 点击左上角的绿色加号按钮并选取 `Tomcat Server` 下面的 `Local` 选项[^2]。 - 在弹出窗口中的 `Server` 标签页下确认所选的应用服务器是否正确无误;同时可以调整端口号等参数以防冲突发生。 - 接着切换到 `Deployment` 标签页,在这里定义要发布的模块以及上下文路径(Context Path),即访问 URL 结构的一部分。 - 设置完毕后保存更改。 #### 测试配置有效性 当一切准备就绪以后,可以通过启动配置来进行初步验证——点击工具栏上的 “Debug” 或者 "Run" 按钮尝试启动服务。正常情况下浏览器会自动打开默认页面表明成功连接到了正在运行的服务实例[^3]。 ```bash # 如果希望手动测试命令行方式下的启动情况可以在命令提示符(cmd)里输入如下指令: startup.bat # Windows平台 ./startup.sh # Unix/Linux/MacOS平台 ```
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值