在不使用maven的情况下创建一个Java Web项目Web项目的创建

发布时间:2026/10/25 16:07:28

在不使用maven的情况下创建一个Java Web项目Web项目的创建 Web项目的创建第一步先去网上下载servlet.jar包apache-tomcat-11.0.24最后是9.0之后(因为里面6.1的servlet.jar缺少 jakarta.servlet-api-6.1.x.jar要另外导入)【说的不一定准确】而我这次使用的11.0只需要导入servlet-api.jar就行第二步新建普通Java项目然后依次创建文件夹以及文件结构如下在web.xml文件下?xml version1.0 encodingUTF-8? web-app xmlnshttps://jakarta.ee/xml/ns/jakartaee xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xsi:schemaLocationhttps://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_1.xsd version6.1 welcome-file-list welcome-fileindex.html/welcome-file /welcome-file-list /web-app此时会全部报红我这里是全部搞好了所以没爆红6.1爆红是因为没有这个版本号后续解决但不用着急。第三步添加为Web项目找到你下载的apache-tomcat-11.0.24文件夹依次打开G/apache-tomcat-11.0.24/lib我的文件夹地址,在lib文件夹下找到servlet-api.jar将他复制到你的项目文件夹wen/WEB-INF/lib下最后右击lib文件夹选择#这里我推荐后两个(因为我只有一个Web模块因此我选了第二个)Global Library全局库所有项目共用不推荐Project Library当前整个项目所有模块共用Module Library仅当前这个 Web 模块生效本次场景最合适。#解释Module模块你现在的 MyJavaWeb 整个项目就是单个模块无多模块子项目Project工程IDEA 窗口打开的顶层文件夹叫 Project一个 Project 可以包含多个 Module多个子项目Global全局IDEA 软件本身所有以后新建、打开的项目全都共用下一步修改下路径按多模块 / 多项目场景配置 Paths编译输出路径单项目选Inherit开头的不用动就行下一步添加为Web项目注意我这里用的idea2023版有的同学第一次搞这个Web选项可能没有出现但会在Facets下点击找到黄色字体的意思是意思是还没创建打包部署产物有兴趣自己了解下//大白话翻译Artifact 项目打包部署包IDEA 要启动 Tomcat必须知道哪些文件夹web 页面、classes 编译 class、lib 依赖 jar要发给 Tomcat。这个 “打包清单” 就叫 Artifact。//为什么会有黄色警告Web Facet resources are not included in any artifacts翻译你虽然标记了这是 Web 项目Web Facet但没有创建部署打包清单。IDEA 不知道启动 Tomcat 时该传哪些文件所以弹出警告。两者核心区别web.xml 声明管语法校验解决 xml 爆红Artifact 部署产物管项目运行消除黄色警告后面才能启动 Tomcat 打开网页。解决方法重新点击File-选择Project Structure最后将这俩个地方改成6.0即可第四步Attach Files or Directories 挂载本地 jar / 文件夹作为项目依赖库第一种值得注意的是之后要将tomcat 的lib文件夹复制到这个项目文件夹下这样做的好处就是将来项目开发完成后发给对方对方不需要servlet包就可以部署运转。我这里提供两种方式#优点项目自带全部依赖不用手动在 IDEA 绑定 Tomcat 库打开项目不会报 Servlet 类缺失项目移植、发给别人时不需要对方本地安装 Tomcat 就能正常编译。但是呢假设对方也有可能会起冲突。然后还有一个缺点就是项目大的时候加载慢#致命缺点强烈不推荐这么做包冲突、部署异常Tomcat 本身运行时会自带 lib 里的 servlet-api、jsp-api如果你项目里重复放一份部署到 Tomcat 时会出现类加载冲突、ClassCastException、页面 500 报错。项目体积暴增Tomcat/lib 几十 MB复制进项目会让项目文件夹臃肿提交 Git / 压缩传输很慢。版本无法统一管理后续更换 Tomcat 版本你还要手动替换项目里所有 jar 包极易出现版本不匹配。弹出下面的选择框就代表无法识别文件夹下类型tips采用第二种方式会自动识别文件夹下文件的类型第二种选择tomcat的lib文件夹作为本地依赖库选择你之前下载tomca的路径我的是G:\apache-tomcat-11.0.24\lib 最后点击Apply就行了。好了以上就完成了新建一个Web项目了。若后续要跑项目还需要部署一个tomcat服务器接下来教大家如何部署服务器tomcat服务器配置以及项目部署上线点击这里向下三角箭头选择Edit...点击号找到Tomcat Server - Local然后点击ok 出现红色警告别着急这是因为Warning: No artifacts marked for deployment翻译警告没有设置任何可部署的项目产物通俗解释Artifact产物 你的 JavaWeb 项目打包后的运行文件页面、class 类、配置文件。Tomcat 启动时不知道要部署哪一套项目文件所以弹出这个警告直接启动会访问页面 404点击 再选择Artifact最后点击Apply这样服务器就部署完成了。最后值得提醒的是http://localhost:8080/MyJavaWeb_war_exploded/这个就是以后你访问自己项目的路径了_war_exploded这个看着不舒服可以去掉因为路径可以自定义但是必须和项目名字以及路径一样启动一下成功启动。。。有的同学安装完tomcat之后启动红色字体是乱码这是因为tomcat的编码是UTF-8然后windows是GBK导致的因此我们只需要找到G:\apache-tomcat-11.0.24\conf\logging.properties以记事本打开这个logging.properties文件在文件末尾追加java.util.logging.ConsoleHandler.encoding GBK保存并退出重启服务器就行了最后关于这个tomcat的部署界面的介绍感兴趣的可以看看一、顶部基础区域Name当前 Tomcat 运行配置的名称默认Unnamed建议改成Tomcat11方便区分多个服务器配置。Store as project file勾选后这个 Tomcat 配置会保存到项目文件夹内换电脑 / 复制项目时配置一起带走不勾选则仅存在当前本地 IDEA。Application server Configure...Application server已绑定的 Tomcat 服务器现在空白所以底部报错Application Server not specified。Configure...绑定本地 Tomcat 安装目录的入口点进去填写G:\apache-tomcat-11.0.24才能消除报错。二、Open browser启动后浏览器设置After launch勾选代表 Tomcat 启动成功后自动打开浏览器访问项目页面。Default默认系统浏览器右侧...可更换 Chrome/Edge 等。with JavaScript debugger前端 JS 调试工具JavaWeb 后端开发不用勾选。URL启动后自动访问的地址默认http://localhost:8080/和后面 Deployment 上下文路径匹配。三、VM optionsJVM 虚拟机启动参数用来配置内存大小、编码、系统变量等。示例日常开发常用plaintext-Dfile.encodingUTF-8 -Xms512m -Xmx1024m新手暂时留空即可。四、On Update action修改代码 / 页面后点击更新按钮时 Tomcat 执行什么操作下拉选项Restart server重启整个 Tomcat 服务器改动 Java 类推荐Update classes and resources只更新 class 和静态资源 (html/css/js)不重启服务器改页面专用Hot swap classes热替换仅更新改动的 classShow dialog更新时弹出选择窗口新手建议勾选。五、JRETomcat 运行使用的 Java 环境默认继承项目 JDK17无需修改。六、Tomcat Server Settings端口设置HTTP port网页访问端口默认8080被占用就改成8081/8082。HTTPS port加密访问端口默认8443普通 Web 项目不用管。AJP portApache 与 Tomcat 联动端口单机开发无需修改。两个复选框Deploy applications configured in Tomcat instance加载 Tomcat 自带 webapps 下的项目只开发自己项目建议不勾选避免冲突。Preserve sessions across restarts and redeploys重启服务器后保留用户 Session 会话测试登录功能可勾选。七、Before launch启动 Tomcat 之前自动执行的任务默认是空可以添加Build代表启动前自动编译全部 Java 代码默认自带无需改动。
延伸阅读

更多相关文章

2026/10/25 21:13:07

3步跑通Astrometry.net:从安装到第一次算出天球坐标

3步跑通Astrometry.net:从安装到第一次算出天球坐标 【免费下载链接】astrometry.net Astrometry.net -- automatic recognition of astronomical images 项目地址: https://gitcode.com/gh_mirrors/as/astrometry.net 刚拍完一张星空,想确认照片…

2026/10/25 18:07:37

LVGL 开发笔记

LVGL采用的是一种面对对象编程思维,在 C语言中,并没有“类”的概念,而 LVGL通过结构体的形式实现了“类”的功能(并 非真的“类”),具体的实现逻辑如下图所示:lv_obj_t 定义控件(界面…

2026/10/25 1:16:36

053、ABAP数据字典与ABAP程序联动

053、ABAP数据字典与ABAP程序联动 昨晚线上一个报表突然查不出数据,用户那边直接炸了。我远程连上去一看,程序逻辑没动过,数据库表里也有记录,但SELECT就是查不到。后来发现是有人在前台顺手改了一个数据元素,把域里的…

2026/10/26 2:50:57

OPAL:动作原语与数据增强提升离线RL稀疏奖励长程任务

1. 稀疏奖励的长程任务,在离线数据上几乎是跑不动的第一次把离线强化学习算法搬到稀疏奖励的长程导航任务上,结果很难看:训练曲线平得像一条直线,评估时的成功率长期停在个位数。换成稠密奖励立刻就好了——同样的算法、同样的数据…

2026/10/26 2:50:57

STM32F103工程级IAP升级方案:支持校验回滚与双模式安全跳转

简介:本资源是一套面向嵌入式开发初学者与进阶工程师的STM32F103串口IAP(在应用编程)完整实现方案,聚焦固件远程升级核心场景,解决设备部署后无法物理烧录、需现场维护等实际痛点。压缩包含290个文件,以72个…

2026/10/26 2:50:57

低碳虚拟电厂优化:P2G与CCS技术融合实践

1. 虚拟电厂与低碳能源转型背景在能源结构转型的大背景下,虚拟电厂(Virtual Power Plant, VPP)作为聚合分布式能源资源的新型运营模式,正逐渐成为电力系统灵活性和经济性的重要支撑。传统虚拟电厂主要关注分布式发电、储能和需求响…

2026/10/26 2:50:57

S7-1200立体仓库PLC程序:四态仓位管理与防冲突状态机实现

简介:本资源为全国职业院校技能大赛‘自动化生产线安装与调试’赛项配套的立体仓库PLC控制系统完整工程包,面向工业自动化专业师生、PLC初学者及备赛选手,聚焦多设备协同控制核心难点。资源包含45个文件,涵盖9个XML通信配置文件&a…

2026/10/26 2:50:57

哈希表巧解子数组和问题:从O(n²)到O(n)的优化

1. 题目解析与核心思路这道题目的核心要求是找出数组中所有连续子数组的和等于给定值k的情况。看似简单,但直接暴力枚举所有子数组会导致O(n)的时间复杂度,这在力扣的大数据量测试用例下必然会超时。我第一次做这道题时也陷入了这个误区,直到…

2026/10/26 2:45:57

Android显示系统架构与性能优化实战

1. Android显示系统架构概述Android显示系统是连接应用层与硬件层的核心桥梁,其设计哲学遵循"分层解耦"原则。从应用开发者视角看,最常接触的是View体系;而从系统层面看,WindowManagerService(WMS)和SurfaceFlinger构成…

2026/10/26 0:20:20

全国计算机二级C语言真题PDF高效刷题指南

简介:这份PDF是全国计算机二级C语言考试的试题与答案解析,专为备考二级C语言的考生准备。内容涵盖C语言特点与设计理念、程序基本组成单位、main函数执行流程、函数嵌套调用规则、标识符命名规范、整型实型字符型数据类型、八进制十六进制数合法形式、运…

2026/10/26 1:53:47

requests+BeautifulSoup:爬虫抓取h1标题的入门实战指南

简介:一份以实战为导向的Python爬虫入门资源,面向具备基本编程基础、希望快速掌握网络数据抓取的初学者,可解决从零编写简单爬虫的常见困惑。实例以requests库发送HTTP请求、BeautifulSoup解析HTML文档,完整演示从网页中提取 标题…

2026/10/26 0:20:17

递推最小二乘参数辨识MATLAB编程:二阶系统与渐消记忆实现

简介:这是一篇面向控制系统、信号处理与机器学习等领域学习者的最小二乘参数辨识程序说明文档。资源共包含一个docx格式文档,压缩包大小七十八KB,内容围绕递推最小二乘算法和渐消记忆最小二乘算法展开:先构造一个极点位于单位圆内…

2026/10/26 0:00:48

Nested Learning:解决AI灾难性遗忘的分层记忆架构

1. 为什么AI需要"记忆"能力?在传统深度学习模型中,我们常遇到一个根本性问题:模型在处理新任务时,往往会完全遗忘之前学到的知识。这种现象被业界称为"灾难性遗忘"(Catastrophic Forgetting)。想象一下&#…

2026/10/26 0:00:48

企业级大模型应用:OCR预处理、Dify编排与DeepSeek落地实战

1. 这不是“用大模型”,而是重构工作流的起点“大模型的应用和工具”——这八个字现在被贴在无数技术分享、招聘JD、内部立项书的标题栏里,但绝大多数人点进去后看到的,是零散的API调用示例、几个开源UI截图、或者一句“接入LLM就能降本增效”…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑