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

探索 IntelliJ IDEA 中 Spring Boot 运行配置

image

前言

  IntelliJ IDEA 作为一款功能强大的集成开发环境(IDE),为 Spring Boot 应用提供了丰富的运行配置选项,定义了如何在 IntelliJ IDEA 中运行 Spring Boot 应用程序,当从主类文件运行应用程序时,IDE 将创建一个 Spring Boot 运行配置,帮助开发者便捷地启动、调试和监控应用。在本文中,将逐一解析这些选项及其在 Spring Boot 开发中的作用。

创建 Spring Boot 运行配置

  1. 在主菜单中,转到 “Run | Edit Configurations”。
  2. 在 “Run/Debug Configurations” 对话框中,单击“+”并选择 Spring Boot。

image

配置参数说明
Name为运行配置指定名称,以便在编辑或运行时快速识别它。
Run on选择要在其中运行配置的目标环境。
除在本地运行应用程序外,还可以选择通过 SSH 在远程服务器或 Docker 容器中运行应用程序。
Store as project file将运行配置保存到可与其他团队成员共享的文件中,默认位置为 .idea/runConfigurations
但是,如果不想共享 .idea 目录,则可以将配置保存到项目中的任何其他目录。
默认情况下处于禁用状态,IntelliJ IDEA 将运行配置设置存储在 .idea/workspace.xml 中。

配置运行选项

  单击 Modify options 以选择用于运行配置的其他选项,如下图所示。

image

Spring Boot

  以下选项特定于正在运行的 Spring Boot 应用程序:

项目描述
Active profiles指定应用启动时要激活的 Spring 配置文件,通常以 .yml.properties 结尾。
这些配置文件可以按需覆盖主配置文件中的属性,实现环境特定的配置。
Enable debug output启用 debug 输出的日志记录。-Ddebug
Hide banner关闭 Spring Boot 启动时显示的 ASCII 图形欢迎界面,使控制台输出更加简洁。
Disable launch optimization禁用 Java 虚拟机(JVM)的启动优化,便于更快地启动应用进行调试。
可以对开发环境保持启用状态,但对生产环境将其禁用。
默认情况下,通过在 JVM 选项来启用:XX:TieredStopAtLevel=1 -noverify
Disable JMX endpoints取消启用 Java 管理扩展(JMX)代理,避免远程监控和管理功能。
在不需要 JMX 监控的情况下,禁用它可减少资源消耗和潜在的安全风险。
On ‘Update’ action指定在修改代码并希望更新正在运行的应用程序时要执行的操作:
Do nothing: 不执行任何操作,适用于不需要自动重新部署的应用场景。
Update resources:更新所有已修改的资源文件。
Update classes and resources:更新修改的资源文件并重新编译更改的 Java 类
Update trigger file:更新触发器文件
Hot swap classes and update trigger file if failed:热插拔类和失败时更新触发器
On frame deactivation指定从 IntelliJ IDEA 切换到其他应用程序(例如,Web 浏览器)时要执行的操作:
Do nothing:不执行任何操作,避免因误操作导致应用停止。
Update resources:更新所有已修改的资源文件。
Update classes and resources:更新类和资源。
Override configuration properties通过将任何配置属性作为 JVM 选项传递来覆盖该属性。

Operating System

  以下选项与操作系统相关:

项目描述
Allow multiple instances允许同时运行同一应用的多个实例,每个实例使用独立的运行配置。
默认情况下,此选项处于禁用状态,这意味着当运行配置时,配置的其他活动会话将终止。
Working directory指定应用的运行工作目录,影响相对路径的解析以及日志、临时文件等的存放位置。
默认情况下,IntelliJ IDEA 使用项目根目录作为工作目录。
Environment variables指定运行此配置时所需的环境变量的名称和值,影响应用的行为和依赖组件的配置。

Java

  以下选项特定于 Spring 应用程序的 Java 编译器和运行时:

项目描述
Do not build before run立即运行应用程序,而无需启动构建过程。
适用于已确保代码编译无误,或希望手动控制构建的情况。
Use classpath of module指定使用哪个模块的类路径来运行应用,适用于多模块项目。
Modify classpath指定另一个 Classpath 或选择要从 Classpath 中排除的依赖项。
当运行时与编译 Classpath 不同时,此选项是必需的。
VM options添加 JVM 参数,如内存分配、系统属性等,以调整 JVM 行为。
Program arguments为应用主类传递命令行参数,供应用代码在运行时读取和使用
Add dependencies with “provided” scope to classpath将依赖管理中 provided 作用域的依赖项添加到运行时类路径,
确保依赖的 Servlet 容器等外部环境提供的库在 IDE 中也能正常工作。
默认情况下,此选项在 Spring Boot 运行配置中处于启用状态。
Shorten command line如果 Classpath 太长,或者VM 参数超出了 OS 命令行长度限制,
则该方法将用于缩短命令行。

Logs

  以下选项与记录此配置的执行有关。

项目描述
Specify logs to be shown in console指定哪些日志文件的内容应在控制台显示,方便实时监控应用日志。
Save console output to file将控制台输出保存到指定文件,便于后期分析和排查问题。
可以手动输入路径,或单击浏览按钮,并在打开的对话框中指向所需的位置。
Show console when a message is printed to stdout当标准输出有内容打印时,自动打开控制台窗口。
Show console when a message is printed to stderr当标准错误输出有内容打印时,自动打开控制台窗口。

Code Coverage

  以下选项与代码覆盖率相关。

项目描述
Specify classes and packages指定应用启动时只扫描和加载特定的类和包,加速启动过程,适用于大型项目或测试特定模块。
Exclude classes and packages排除应用启动时不应扫描和加载的类和包,避免不必要的处理和潜在冲突。

Before Launch

  在此区域中,可以指定在启动选定的 “run/debug” 配置之前要执行的任务,任务将按照它们在列表中的显示顺序执行。

项目描述
Add before launch task配置应用启动前需要执行的任务,如编译、Maven构建、数据库迁移等。
Open run/debug tool window when started启动应用后自动打开 run/debug 窗口,便于观察应用状态和控制运行
Focus run/debug tool window when started运行测试时,将焦点放在 Run configuration tool 窗口上。
Show the run/debug configuration settings before start在应用启动前显示当前运行配置的详细设置,确认无误后再启动。

配置启动前可以执行的任务有如下几种:

配置属性说明
Launch Web Browser选择此选项可启动浏览器。在打开的对话框中,选择浏览器的类型并提供起始 URL。
此外,请指定是否希望使用 JavaScript 调试器启动浏览器。
Run External tool运行外部应用程序。在打开的对话框中,选择要运行的一个或多个应用程序。
如果尚未在 IntelliJ IDEA 中定义,请添加其定义。
Run Another Configuration选择以执行另一个运行/调试配置,并等待它完成,然后再启动当前配置。
Run Remote External Tool添加远程 SSH 外部工具。
Run Gradle task运行 Gradle 任务。在打开的对话框中,指定任务并根据需要提供其他配置。
Build选择编译指定的模块,将执行 Build Module 操作。
如果在编译过程中发生错误,IntelliJ IDEA 不会尝试启动 run/debug 配置。
Build Project选择编译整个项目,将执行 Build Project 操作。
如果在编译过程中发生错误,IntelliJ IDEA 不会尝试启动 run/debug 配置。
Build, no error check与 Build 选项相同,但 IntelliJ IDEA 将尝试启动 run/debug 配置,而不管编译结果如何。
Build Artifacts选择此选项可构建一个或多个工件。在打开的对话框中,选择应构建的一个或多个工件。
Run Maven Goal选择此选项可运行 Maven 目标。在打开的对话框中,选择要运行的目标。
Run Grunt task选择此选项以运行 Grunt 任务。了解既可,笔者基本没用到过。
Run gulp task选择此选项以运行 Gulp 任务。了解既可,笔者基本没用到过。
Run npm script选择此选项可执行 npm 脚本。
Compile TypeScript运行内置的 TypeScript 编译器,从而确保所做的所有更改都反映在生成的 JavaScript 文件中。
Disconnect Data Source如果要在 run/debug 配置之前中断与数据源的连接,请选择此选项。

总结

  通过上述说明,我们成功地在了解了 IntelliJ IDEA 中 Spring Boot 运行配置。IntelliJ IDEA 提供的 Spring Boot 运行配置选项赋予了开发者精细控制应用运行环境、日志输出、依赖管理、类加载策略、预启动任务等方方面面的能力,极大地提升了开发效率和灵活性。了解并合理运用这些选项,能使 Spring Boot 开发体验更加顺畅。

image

相关文章:

探索 IntelliJ IDEA 中 Spring Boot 运行配置

前言 IntelliJ IDEA 作为一款功能强大的集成开发环境(IDE),为 Spring Boot 应用提供了丰富的运行配置选项,定义了如何在 IntelliJ IDEA 中运行 Spring Boot 应用程序,当从主类文件运行应用程序时,IDE 将创建…...

三除数枚举

给你一个整数 n 。如果 n 恰好有三个正除数 ,返回 true ;否则,返回 false 。 如果存在整数 k ,满足 n k * m ,那么整数 m 就是 n 的一个 除数 。 输入:n 4 输出:true 解释:4 有三…...

【051】基于51单片机温度计【Proteus仿真+Keil程序+报告+原理图】

☆、设计硬件组成:51单片机最小系统DS18B20温度传感器LCD1602液晶显示按键设置蜂鸣器LED灯。 1、本设计采用STC89C51/52、AT89C51/52、AT89S51/52作为主控芯片; 2、采用DS18B20温度传感器测量温度,并且通过LCD1602实时显示温度;…...

[Java]微服务之服务保护

雪崩问题 微服务调用链路中的某个服务故障,引起整个链路中的所有微服务都不可用,这就是雪崩 雪崩问题产生的原因是什么? 微服务相互调用,服务提供者出现故障或阻塞。服务调用者没有做好异常处理,导致自身故障。调用链中的所有服…...

自动驾驶目标检测融合全貌

1、early fusion 早期融合,特点用到几何空间转换3d到2d或者2d到3d的转换,用像素找点云或者用点云找像素。 2、deep fusion 深度融合,也是特征级别融合,也叫多模态融合,如bevfusion范式 3、late fusion 晚融合&#x…...

消息框(Message Box)的测试方法和测试用例

我来帮你了解消息框(Message Box)的测试方法和测试用例的编写。 我已经创建了一个测试用例示例,让我为你解释消息框测试的主要方面: 测试维度: 功能性测试:验证消息框的基本功能是否正常样式测试:确认不同类型消息框…...

Ubuntu 包管理

APT&dpkg 查看已安装包 查看所有已经安装的包 dpkg -l 查找包 apt search <package_name>搜索软件包列表&#xff0c;找到与搜索关键字匹配的包 dpkg与grep结合查找特定的包 dpkg -s <package>&#xff1a;查看某个安装包的详细信息 安装包 apt安装命令 更新…...

[Ubuntu] linux之Ubuntu18.04的下载及在虚拟机中详细安装过程(附有下载链接)

前言 ubuntu 链接&#xff1a;https://pan.quark.cn/s/283509d0d36e 提取码&#xff1a;dfT1 链接失效&#xff08;可能被官方和谐&#xff09;可评论或私信我重发 下载压缩包后解压 &#xff01;&#xff01;安装路径不要有中文 下载后解压得到.iso文件&#xff0c;不要放在…...

ffmpeg安装(windows)

ffmpeg安装-windows 前言ffmpeg安装路径安装说明 前言 ffmpeg的安装也是开箱即用的,并没有小码哥说的那么难 ffmpeg安装路径 这就下载好了! 安装说明 将上面的bin目录加入到环境变量,然后在cmd中测试一下: C:\Users\12114\Desktop\test\TaskmgrPlayer\x64\Debug>ffmpe…...

服务器数据恢复—raid6阵列硬盘被误重组为raid5阵列的数据恢复案例

服务器存储数据恢复环境&#xff1a; 存储中有一组由12块硬盘组建的RAID6阵列&#xff0c;上层linux操作系统EXT3文件系统&#xff0c;该存储划分3个LUN。 服务器存储故障&分析&#xff1a; 存储中RAID6阵列不可用。为了抢救数据&#xff0c;运维人员使用原始RAID中的部分…...

linux内核编译启动总结

linux kernel 编译 升级汇总 写在前面内核编译获取kernel代码开始前的准备工作 编译过程1\.解压与净化将下载好的linux内核解压至/usr/src 2\. 得到源代码后,将其净化3\. 配置要进行编译的内核4.编译内核. &#xff08;15分钟&#xff09;5.编译模块.方法1:方法2&#xff1a; 6…...

Android Studio的AI工具插件使用介绍

Android Studio的AI工具插件使用介绍 一、前言 Android Studio 的 AI 工具插件具有诸多重要作用&#xff0c;以下是一些常见的方面&#xff1a; 代码生成与自动补全 代码优化与重构 代码解读 学习与知识获取 智能搜索与资源推荐实际使用中可以添加注释&#xff0c;解读某段代…...

本地部署 WireGuard 无需公网 IP 实现异地组网

WireGuard 是一个高性能、极简且易于配置的开源虚拟组网协议。使用路由侠内网穿透使其相互通讯。 第一步&#xff0c;服务端&#xff08;假设为公司电脑&#xff09;和客户端&#xff08;假设为公司外的电脑&#xff09;安装部署 WireGuard 1&#xff0c;点此下载&#xff08;…...

asyncio.ensure_future 与 asyncio.create_task:Python异步编程中的选择

asyncio.ensure_future 与 asyncio.create_task&#xff1a;Python异步编程中的选择 引言asyncio.ensure_futureasyncio.create_task两者的区别参数接受范围任务调度的保证代码可读性 哪个更好&#xff1f;使用asyncio.create_task使用asyncio.ensure_future 结论参考 引言 在…...

CTF之密码学(密码特征分析)

一.MD5,sha1,HMAC,NTLM 1.MD5&#xff1a;MD5一般由32/16位的数字(0-9)和字母(a-f)组成的字符串 2.sha1&#xff1a;这种加密的密文特征跟MD5差不多&#xff0c;只不过位数是40&#xff08;sha256&#xff1a;64位&#xff1b;sha512:128位&#xff09; 3.HMAC&#xff1a;这…...

JVM调优篇之JVM基础入门AND字节码文件解读

目录 Java程序编译class文件内容常量池附录-访问标识表附录-常量池类型列表 Java程序编译 Java文件通过编译成class文件后&#xff0c;通过JVM虚拟机解释字节码文件转为操作系统执行的二进制码运行。 规范 Java虚拟机有自己的一套规范&#xff0c;遵循这套规范&#xff0c;任…...

EXCEL截取某一列从第一个字符开始到特定字符结束的字符串到新的一列

使用EXCEL中的公式进行特定截取 假设列A是一组产品的编码&#xff0c;我们需要的数据是“-”之前的字段。 我们需要在B1单元格输入公式“LEFT(A1,SEARCH("-",A1)-1)”然后选中B1至B4单元格&#xff0c;按“CTRLD”向下填充&#xff0c;就可以得出其它几行“-”之前的…...

数据库期末复习题库

1. Mysql日志功能有哪些? 记录日常操作和错误信息&#xff0c;以便了解Mysql数据库的运行情况&#xff0c;日常操作&#xff0c;错误信息和进行相关的优化。 2. 数据库有哪些备份方法 完全备份&#xff1a;全部都备份一遍表备份&#xff1a;只提取数据库中的数据&#xff0…...

私有库gitea安装

一 gitea是什么 Gitea是一款自助Git服务&#xff0c;简单来说&#xff0c;就是可以一个私有的github。 搭建很容易。 Gitea依赖于Git。 类似Gitea的还有GitHub、Gitee、GitLab等。 以下是安装步骤。 二 安装sqilite 参考&#xff1a; 在windows上安装sqlite 三 安装git…...

关于最近win11不能使用ie,而不能使用考试客户端的解决方法

弄ie的那个我感觉是非常难的&#xff0c;所以我的是另一种的方法 下载360浏览器&#xff08;不是360全家桶&#xff09;360安全浏览器-全面保护上网安全&#xff0c;4亿用户共同选择&#xff08;上面的是官网&#xff0c;不要下载错了&#xff0c;还有安装界面注意不要勾选一下…...

深度学习之Mask-R-CNN

1.1 Mask-RCNN 的网络结构示意图 其中黑色部分为原来的Faster-RCNN&#xff0c;红色部分为在Faster网络上的修改&#xff1a;    1&#xff09;将ROI Pooling层替换成了ROIAlign&#xff1b;    2&#xff09;添加并列的FCN层&#xff08;Mask层&#xff09;&#xff1b;  …...

css包含块

包含块 出现 在css中一些属性的计算可能超出你的预料&#xff0c;在普遍情况下会认为定位属性和百分比的宽高是根据父元素计算的&#xff0c;但是准确来说他们都是根据元素所在的包含块来计算的&#xff0c;所以掌握包含块的知识是非常关键的。 内容 在CSS中&#xff0c;“…...

混沌工程/混沌测试/云原生测试/云平台测试

背景 私有云/公有云/混合云等具有复杂&#xff0c;分布式&#xff0c;环境多样性等特点&#xff0c;许多特殊场景引发的线上问题很难被有效发现。所以需要引入混沌工程&#xff0c;建立对系统抵御生产环境中失控条件的能力以及信心&#xff0c;提高系统面对未知风险得能力。 …...

研发设计数字化:PLM、PDM、ERP介绍及其区别

一、产品全生命周期管理的定义 1.1 产品全生命周期&#xff08;PLM&#xff09;发展背景 目前&#xff0c;数字化设计与制造的技术&#xff08;如CAX、DFX等&#xff09;已经在产品开发中得到广泛应用&#xff0c;而各种企业和产品管理软件&#xff08;如ERP、SCM、PDM、CRM等…...

Python练习51

Python日常练习 题目&#xff1a; 调用函数fun判断一个三位数是否“水仙花数”。 在main函数中从键盘输入一个三位数&#xff0c;并输 出判断结果。请编写fun函数。 说明&#xff1a; 所谓“水仙花数”是指一3位数&#xff0c;其各位数字立方和 等于该数本…...

Qt 前置课程 QtNFC

文章目录 详解 Qt NFC 模块&#xff08;QtNFC&#xff09;1. 什么是 NFC&#xff1f;2. NFC 的原理2.1 主动设备与被动设备2.2 三种工作模式2.3 数据交换 3. QtNFC 模块概述4. 使用 QtNFC 模块4.1 配置 .pro 文件 5. NFC 的常见应用场景6. QtNFC 模块的主要类6.1 QNearFieldMan…...

【论文阅读】 Learning to Upsample by Learning to Sample

论文结构目录 一、之前的上采样器二、DySample概述三、不同上采样器比较四、整体架构五、设计过程&#xff08;1&#xff09;初步设计&#xff08;2&#xff09;第一次修改&#xff08;3&#xff09;第二次修改&#xff08;4&#xff09;第三次修改 六、DySample四种变体七、复…...

堆排序(含证明)

引言 前面我们讲过堆的基本操作的实现&#xff0c;现在给定一个int类型的数组&#xff0c;里面存放的数据是无序的&#xff0c;我们如何利用堆的思想来实现数组内数据的升序排列或降序排列呢&#xff1f; 通过前面讲到的堆的实现&#xff0c;我们可以想到&#xff0c;我们再开…...

蓝桥杯模拟题不知名题目

题目:p是一个质数&#xff0c;但p是n的约数。将p称为是n的质因数。求2024最大质因数。 #include<iostream> #include<algorithm> using namespace std; bool fun(int x) {for(int i 2 ; i * i < x ; i){if(x % i 0)return false;}return true; } int main() …...

C#中的工厂模式

在C#中&#xff0c;工厂模式&#xff08;Factory Pattern&#xff09; 是一种常见的设计模式&#xff0c;它属于创建型模式&#xff0c;主要用于定义一个用于创建对象的接口&#xff0c;让子类决定实例化哪一个类。通过使用工厂模式&#xff0c;客户端代码不需要直接实例化具体…...

建设银行网站网址/百度seo关键词排名查询工具

文章目录一、核心组件1.1 SecurityContextHolder类1.1.1 概念1.1.2 存储策略1.1.3 源码1.2 SecurityContext接口1.3 Authentication接口1.4 GrantedAuthority接口1.5 UserDetails接口1.6 UserDetailsService接口1.7 AuthenticationManager接口1.8 DaoAuthenticationProvider二、…...

苹果做安卓游戏下载网站好/百度推广客户端手机版

本文主要向大家介绍了C/C知识点之1003 Emergency(25 分)C语言版本(提问求解答)&#xff0c;通过具体的内容向大家展示&#xff0c;希望对大家学习C/C知识点有所帮助。1003 Emergency(25 分)As an emergency rescue team leader of a city, you are given a special map of your…...

做app简单还是网站/seo搜索排名优化是什么意思

DATA_ANALYSE 一、数据分析概述 步骤&#xff1a;数据获取&#xff0c;探索分析与可视化&#xff0c;预处理理论&#xff0c;分析建模&#xff0c;模型评估 二、数据获取 数据获取手段: (1) 数据仓库&#xff08;DW&#xff09; 将所有业务数据汇总整理 全部事实的记录部分维…...

建筑工程网 装修/关键词查询优化

剑指第二版第7题重建二叉树 这算是一道老题目了,通过前续遍历和中序遍历创建一个二叉树,我记得还有一道反序列二叉树的题,只给了三种dfs中的一种,区别还是很大的,没有什么可以说的了,找规律就可以了. class Solution {HashMap<Integer, Integer> map new HashMap<&…...

wordpress支付宝/360推广登录入口

最近研究基于 GeoServer 的开源 GIS 框架&#xff0c;其中构建 GIS database 需要使用 PostgreSQL PostGIS 插件。花了些时间学习&#xff0c;这里记录一下。如有错误&#xff0c;感谢不吝指正&#xff5e;&#xff5e;本文地址&#xff1a;https://segmentfault.com/a/1190000…...

电子商务网站开发费用/h5网站制作平台

5V 输入升压开关型双节锂电池充电管理芯片 -FS5080ES FS5080ES 是一款 3.6V-5.5V/2A 输入&#xff0c; 1A 输出&#xff0c;双节锂电池/锂离子电池充电的异步升压充电控制器。具有完善的充电保护功能。针对不同的应用场合&#xff0c;芯片可以通过方便地调节外部电阻的阻值来改…...