IDEA 中 Jetty 的配置操作手册
ztj100 2024-12-11 18:24 9 浏览 0 评论
背景
因为工作需要,玩了下 Jetty 。本来没打算了解 Jetty 的,想着就是一种 Web 服务器而已,用 Tomcat 应该是没有问题的吧。出乎意料的是,接手的这个项目代码完全是依赖于 Jetty 的,项目中的页面路径以及有些文件读取的代码竟然是按照 Jetty 定制的,用 Tomcat 无法跑起来,这点挺让人无语的。
那就弄一下 Jetty 吧,以前也没玩过这个东西,在百度的指引下,参考了十几个网页后终于在 IDEA 中配置起了一个 Jetty 的应用,折腾了一个下午把这个项目给跑起来了。
Jetty 下载
非解压版的 Jetty ,到官网点击 Jetty 最新版本下载链接 ,下载最新的解压的 Jetty 到本地。.zip 这个链接是 windows 的解压版本,下载这个即可。
IDEA 插件下载
为什么需要插件呢?因为开发过程中需要调试 Web 应用,此时需要在 IDE 中动态发布应用到 Jetty 中,这点跟 Tomcat 类似。到 IDEA 的设置 -> 插件 中搜索 Jetty :
点击“Install” 完成插件的安装,安装完成后,“ Run/Debug Configurations ” 配置的 “ Defaults ” 的内容中将会多出一个 Jetty Server 的选项,跟 Tomcat Server 类似。
配置 Jetty 启动应用
打开 “ Run/Debug Configurations ” 配置的 “ Defaults ”,选择 Jetty Server 的 Local 项进行 Jetty 服务器信息的配置 。
- 配置 Jetty 的根目录,选中刚刚下载的 Jetty 解压包所在的目录
- 勾选配置 “jmx.mode”
- JRE 选择本地系统环境配置的 JDK 目录
点击 OK ,完成服务器配置信息。
添加一个 Jetty 应用
1、点击“+” 添加一个 Jetty Server 应用:
2、IDEA 将自动选中刚刚配置的 Jetty 服务器信息:
3、注意配置时的模块选择,需要勾选 jmx,否则会报错:
4、部署一个应用:
为了便于动态编译,选择 Artifact 时选择一个 xxx:war exploded 的应用,此时 Server 配置项中更新配置选项就会多出几个:
选择更新类和资源文件,就能进行热部署了。
IDEA 默认配置修改
IDEA 有一个 Default Settings 的配置,以前一直不知道,结果每次打开 IDEA 导入一个新工程时,maven 配置都是默认的配置而非本地自己的配置,突然意识到这肯定是个问题,应该有解决办法,无知耽误多少功夫啊。
修改下默认的 maven 配置就可以了呀:
将默认的 maven 配置改掉:
总结
可以直接点击 + 添加一个 Jetty Server 运行配置,IDEA 默认是要支持 JMX 的,所以配置 Jetty 服务器信息时需要勾选 jmx.mode 模块。
Jetty 是以模块配置的方式添加一些第三方应用的,就是 Configure 配置时弹出的 Path 勾选项,Active 选项最终会被写入 Jetty 的 start.ini 文件中。
初略看了下 Jetty 的 etc 目录下的配置,jetty.xml 类似我们熟悉的 Tomcat 的 server.xml ,感觉比 Tomcat 的配置复杂多了呢!
从 Jetty 应用的启动过程来看,它跟 Tomcat 有一点不一样,IDEA 启动时会将 Jetty 根目录的 webapps 目录下的所有的 war 包都启动,此外再启动当前 IDEA 中配置的应用。而 Tomcat 根目录下的应用不会被使用,IDEA 只会只用 Tomcat 根目录下的配置信息,而不会将它的 webapps 目录下的应用启动。
相关推荐
-
- SpringBoot如何实现优雅的参数校验
-
平常业务中肯定少不了校验,如果我们把大量的校验代码夹杂到业务中,肯定是不优雅的,对于一些简单的校验,我们可以使用java为我们提供的api进行处理,同时对于一些...
-
2025-05-11 19:46 ztj100
- Java中的空指针怎么处理?
-
#暑期创作大赛#Java程序员工作中遇到最多的错误就是空指针异常,无论你多么细心,一不留神就从代码的某个地方冒出NullPointerException,令人头疼。...
- 一坨一坨 if/else 参数校验,被 SpringBoot 参数校验组件整干净了
-
来源:https://mp.weixin.qq.com/s/ZVOiT-_C3f-g7aj3760Q-g...
- 用了这两款插件,同事再也不说我代码写的烂了
-
同事:你的代码写的不行啊,不够规范啊。我:我写的代码怎么可能不规范,不要胡说。于是同事打开我的IDEA,安装了一个插件,然后执行了一下,规范不规范,看报告吧。这可怎么是好,这玩意竟然给我挑出来这么...
- SpringBoot中6种拦截器使用场景
-
SpringBoot中6种拦截器使用场景,下面是思维导图详细总结一、拦截器基础...
- 用注解进行参数校验,spring validation介绍、使用、实现原理分析
-
springvalidation是什么在平时的需求开发中,经常会有参数校验的需求,比如一个接收用户注册请求的接口,要校验用户传入的用户名不能为空、用户名长度不超过20个字符、传入的手机号是合法的手机...
- 快速上手:SpringBoot自定义请求参数校验
-
作者:UncleChen来源:http://unclechen.github.io/最近在工作中遇到写一些API,这些API的请求参数非常多,嵌套也非常复杂,如果参数的校验代码全部都手动去实现,写起来...
- 分布式微服务架构组件
-
1、服务发现-Nacos服务发现、配置管理、服务治理及管理,同类产品还有ZooKeeper、Eureka、Consulhttps://nacos.io/zh-cn/docs/what-is-nacos...
- 优雅的参数校验,告别冗余if-else
-
一、参数校验简介...
- Spring Boot断言深度指南:用断言机制为代码构筑健壮防线
-
在SpringBoot开发中,断言(Assert)如同代码的"体检医生",能在上线前精准捕捉业务逻辑漏洞。本文将结合企业级实践,解析如何通过断言机制实现代码自检、异常预警与性能优化三...
- 如何在项目中优雅的校验参数
-
本文看点前言验证数据是贯穿所有应用程序层(从表示层到持久层)的常见任务。通常在每一层实现相同的验证逻辑,这既费时又容易出错。为了避免重复这些验证,开发人员经常将验证逻辑直接捆绑到域模型中,将域类与验证...
- SpingBoot项目使用@Validated和@Valid参数校验
-
一、什么是参数校验?我们在后端开发中,经常遇到的一个问题就是入参校验。简单来说就是对一个方法入参的参数进行校验,看是否符合我们的要求。比如入参要求是一个金额,你前端没做限制,用户随便过来一个负数,或者...
- 28个验证注解,通过业务案例让你精通Java数据校验(收藏篇)
-
在现代软件开发中,数据验证是确保应用程序健壮性和可靠性的关键环节。JavaBeanValidation(JSR380)作为一个功能强大的规范,为我们提供了一套全面的注解工具集,这些注解能够帮...
- Springboot @NotBlank参数校验失效汇总
-
有时候明明一个微服务里的@Validated和@NotBlank用的好好的,但就是另一个里不能用,这时候问题是最不好排查的,下面列举了各种失效情况的汇总,供各位参考:1、版本问题springbo...
- 这可能是最全面的Spring面试八股文了
-
Spring是什么?Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- idea eval reset (50)
- vue dispatch (70)
- update canceled (42)
- order by asc (53)
- spring gateway (67)
- 简单代码编程 贪吃蛇 (40)
- transforms.resize (33)
- redisson trylock (35)
- 卸载node (35)
- np.reshape (33)
- torch.arange (34)
- node卸载 (33)
- npm 源 (35)
- vue3 deep (35)
- win10 ssh (35)
- exceptionininitializererror (33)
- vue foreach (34)
- idea设置编码为utf8 (35)
- vue 数组添加元素 (34)
- std find (34)
- tablefield注解用途 (35)
- python str转json (34)
- java websocket客户端 (34)
- tensor.view (34)
- java jackson (34)