随记:有关idea中jdk版本
第一个地方:
这个可能就是你整个项目的jdk版本的使用,你改了这里大概率可以改了

第二个地方:
就是 有关maven项目的 pom文件

一开始我的第一地方用的是 17 但是这里用的是8 ![]()
但是运行的时候还是 17
这里可能是 maven的 项目这个地方只是对打包用的jdk8吧
开发工具和构建工具的行为差异
- 开发工具优先性:通常开发工具(如 IntelliJ IDEA)在运行项目时可能会优先使用其项目设置中的 JDK 版本。在你的情况下,尽管项目结构中显示的是 JDK 17,但 pom 文件中指定的是 JDK 8。开发工具在运行项目时可能会依据自身的配置和优先级规则,选择使用项目结构中设置的 JDK 17 来执行项目。这是因为开发工具通常会根据项目的具体配置和环境变量来确定运行时的 JDK 版本,并且在运行过程中可能会覆盖构建工具(Maven)中的设置。
- 构建工具的作用范围:Maven 在构建项目时会根据 pom 文件中的配置进行编译、测试和打包等操作。然而,Maven 对 JDK 版本的设置主要影响构建过程,而不一定直接决定项目的运行时环境。在构建阶段,Maven 会根据 pom 文件中指定的 JDK 版本调用相应的编译器和工具来处理源代码,但在运行项目时,开发工具可能会有自己的运行时配置机制,这可能导致实际运行时使用的 JDK 版本与 Maven 构建时指定的版本不一致。
二、优先级判断
- 一般来说,开发工具的项目设置在运行项目时可能具有较高的优先级。这是因为开发工具直接控制项目的运行环境,并且会根据其自身的配置和用户设置来选择合适的 JDK 版本。然而,具体的优先级可能因开发工具的不同版本和配置而有所变化。
- 在构建过程中,Maven 的设置对于确保项目的正确构建和依赖管理非常重要。但在运行项目时,开发工具可能会根据其自身的逻辑和优先级来确定使用哪个 JDK 版本。
第三个地方:

这里的有什么用?
大概是在编译的时候 idea 指定的版本。
构建、执行、部署 > 编译器 > Java 编译器设置
一、编译源代码
- 生成字节码:Java 编译器将 Java 源代码转换为字节码,这是一种与平台无关的中间表示形式。字节码可以在任何安装了适当 Java 运行时环境(JRE)的平台上运行,实现了 “一次编写,到处运行” 的特性。例如,开发人员编写的 Java 类文件经过编译器处理后,生成的字节码可以在 Windows、Linux 和 macOS 等不同操作系统上执行,只要这些系统上安装了兼容的 JRE。
- 语法检查和错误报告:编译器在编译过程中会检查源代码的语法正确性。如果发现语法错误,编译器会报告错误信息,帮助开发人员快速定位和修复问题。例如,如果开发人员在代码中遗漏了分号、括号不匹配或者使用了未定义的变量,编译器会指出这些错误,以便开发人员进行修正。
- 类型检查和安全性保障:编译器会进行类型检查,确保在程序运行时不会出现类型不匹配的错误。这有助于提高程序的安全性和稳定性。例如,编译器会检查方法调用中参数的类型是否正确,以及变量的赋值是否符合其类型要求。如果发现类型不匹配的情况,编译器会发出错误提示,防止在运行时出现不可预测的错误。
二、优化和性能提升
- 代码优化:现代 Java 编译器通常会进行各种优化,以提高生成的字节码的性能。这些优化包括但不限于常量折叠、方法内联、循环优化等。例如,编译器可能会将一些常量表达式在编译时进行计算,并将结果直接嵌入到生成的字节码中,减少运行时的计算开销。方法内联可以将小的方法调用直接替换为方法体的代码,减少方法调用的开销。循环优化可以对循环结构进行分析和优化,提高循环的执行效率。
- 目标字节码版本控制:通过设置项目字节码版本和模块目标字节码版本,开发人员可以控制生成的字节码的版本,以适应不同的运行环境和需求。例如,如果项目需要在旧版本的 JRE 上运行,可以将字节码版本设置为较低的版本,以确保兼容性。同时,编译器也会根据目标字节码版本进行相应的优化和调整,以提高在特定版本 JRE 上的性能。
第四个地方:

这个可能是运行环境的配置jre java虚拟机的版本
构建、执行、部署 > 构建工具 > Maven > 运行程序设置中的 JRE 设置
- 虚拟机支持:JRE 包含了 Java 虚拟机(JVM),这是 Java 程序能够在不同操作系统上运行的关键。JVM 负责将 Java 字节码转换为特定操作系统和硬件平台能够理解的机器指令,并执行这些指令。不同的操作系统有不同版本的 JVM,但 Java 程序可以在任何安装了适当 JRE 的平台上运行,而无需进行修改。例如,一个在 Windows 上开发的 Java 项目,可以在 Linux 或 macOS 等其他操作系统上运行,只要这些系统上安装了兼容的 JRE。
- 核心类库:JRE 还提供了大量的核心类库,这些类库包含了 Java 程序运行所需的基本功能,如输入输出处理、网络通信、图形用户界面、日期和时间处理等。开发人员在编写 Java 程序时,可以直接使用这些类库中的类和方法,而无需从头开始实现所有的功能。例如,当开发一个网络应用程序时,可以使用 JRE 中的
java.net包来实现网络通信功能。
还有一个地方:
就是maven的settings.xml 里面也有java版本的指定,这个就不知道哪个优先级更高了,但是我变了几次都是在第一个地方改了,就改了。
最后总的来说就是,
把这几个地方都改成一样的应该就不会有什么问题,要是改了没用,可能就是有缓存,重启一下。本着也是记录一下这几个可以改的地方。不用每次都去查其他的了。
相关文章:
随记:有关idea中jdk版本
第一个地方:这个可能就是你整个项目的jdk版本的使用,你改了这里大概率可以改了 第二个地方: 就是 有关maven项目的 pom文件 一开始我的第一地方用的是 17 但是这里用的是8 但是运行的时候还是 17 这里可能是 maven的 项目这个地方只是对…...
【算法篇】贪心类(1)(笔记)
目录 一、理论基础 1. 大纲 2. 求解步骤 二、Leetcode 题目 1. 分发饼干 2. 摆动序列 3. 最大子序和 4. 买卖股票的最佳时机 II 5. 跳跃游戏 6. 跳跃游戏 II 7. K 次取反后最大化的数组和 8. 加油站 9. 分发糖果 一、理论基础 1. 大纲 2. 求解步骤 将问题分解为…...
el-select 可搜索、多选状态遮挡住搜索框
el-select 可搜索多选状态遮挡住搜索框 最近在使用 element-ui 中 el-select组件遇到一个问题, 我们需求可以多选,也可以输入搜索, 当鼠标在边框时才是输入搜索状态,通过下面gif动图可发现鼠标经过边框时,才显示清空图…...
el-table中实现可选表格区域的鼠标事件检测
背景描述 vue3element plus想要实现el-table中特定区域内的单元格才可点击 代码实现 首先,需要给el-table绑定单元格点击事件 <el-table :data"currTableData"borderstyle"width: 100%;"height"calc(100vh - 400px)"cell-clic…...
特种作业操作登高架设作业历年真题附答案
1.直接引起坠落的客观危险因素之平均温度低于( )℃。 A.10 B.3 C.5 答案:C 2.从事脚手架支搭作业的人员必须年满( )周岁。 A.18 B.20 C.22 答案:A 3.跨越架横杆有效部分的小头直径不…...
schedule-执行周期性任务
模块介绍 该模块主要用于python的任务调度,使用简便友好的python语法定期运行python函数或者一些其他的调用对象,这个模块就类似于windows的任务计划和linux的crontab,都是用于在服务器上周期性执行某段python脚本。 相较于linux的crontab对…...
python图片文件路径排序
解决用sord 排序文件路径乱序问题: image_files 是 图片文件路径列表[pythonProject/video2img/1.jpg,pythonProject/video2img/2.jpg,.......] image_files.sort(keylambda x: int(x.split(/)[-1].split(.)[0]))...
ARTTrack6/M、ARTTrack5、ART AT7-80横向对比
在光学跟踪系统领域,ART公司凭借其先进的技术和卓越的产品性能,一直受到市场的广泛关注。ARTTrack6/M、ARTTrack5和ART AT7-80作为ART公司的三款代表性产品,各自在不同的应用场景中发挥着重要作用。本文将对这三款产品进行纵向对比࿰…...
【Vue】Vue3.0(十三)中标签属性ref(加在普通标签上、加在组件标签上)、局部样式
上篇文章: 【Vue】Vue3.0 (十二)、watchEffect 和watch的区别及使用 🏡作者主页:点击! 🤖Vue专栏:点击! ⏰️创作时间:2024年10月18日20点56分 文章目录 基本…...
Linux系统基础-文件系统
个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 Linux系统基础-文件系统 收录于专栏[Linux学习] 本专栏旨在分享学习Linux的一点学习笔记,欢迎大家在评论区交流讨论💌 目录 1. 回顾C语言…...
机器学习和深度学习常用的工具库
一、机器学习常用库 1. Scikit-learn 简介:一个基于Python的机器学习库,专注于经典的机器学习算法。特点: 提供了多种分类、回归、聚类和降维算法。具有统一的API,便于使用。集成了数据预处理、模型选择和评估等功能。 应用&…...
【unity小技巧】Unity6 LTS版本安装和一些修改和新功能使用介绍
文章目录 前言安装新功能变化1、官方推荐使用inputsystem进行输入控制2、修复了InputSystem命名错误导致listen被遮挡的bug3、自带去除unity启动画面logo功能4、unity官方的behavior行为树插件5、linearVelocity代替过时的velocity方法待续 完结 前言 2024/10/17其实unity就已…...
5种边界填充
目录 边界填充需要知道的两个东西什么算边界边界的范围是多少举例 复制填充反射法反射101法外包装法数值填充法原图代码最终效果 边界填充需要知道的两个东西 什么算边界 顾名思义:就是图片的最外边 边界的范围是多少 根据你自己的需要而设置 举例 这里我选择…...
鸿蒙网络编程系列7-TLS安全数据传输单向认证示例
1.TLS简介 TLS(Transport Layer Security)协议的前身是SSL(Secure Socket Layer)安全套接层协议,由Netscape公司于1994年提出,是一套网络通信安全协议。IETF(The Internet Engineering Task Fo…...
LangGraph 源码分析 | BaseTool 模板类
文章目录 BaseTool 源码分析核心属性以 TavilySearchResults(BaseTool) 为例namedescriptionargs_schemaresponse_format查询选项属性 需要子类实现的抽象方法以 TavilySearchResults(BaseTool) 为例 核心方法arun():run()的异步执行版本invoke()和ainvoke() BaseTo…...
vulnhub靶场之JOY
一.环境搭建 1.靶场描述 Does penetration testing spark joy? If it does, this machine is for you. This machine is full of services, full of fun, but how many ways are there to align the stars? Perhaps, just like the child in all of us, we may find joy in …...
intel和AMD突然联姻,这操作给我看傻了
要说现在的显卡一哥,那肯定非 NVIDIA 莫属,不仅仅是在 AI 领域是赚的盆满钵满,更是在游戏显卡领域把红蓝两家打的节节败退。 在 6000 系列尚能与之一战的 AMD 也认清了现实,在最近宣布了下一代 8000 系列显卡放弃高端显卡战争&…...
yolo_face_pose-DataBall 人脸关键点数据集 >> DataBall
数据集下载地址:ultralyticsyolo训练自定义人脸关键点训练和验证数据集资源-CSDN文库 数据集定义: ultralytics yolo 训练自定义人脸关键点训练和验证数据集 数据集格式:yolo 训练集数量:3295 验证集数量:120 类别&a…...
Unity 山水树木
本章节内容 1. Unity对3D游戏物体的简单操作; 2. 构建山水树木的场景 1. Unity 简易操作 1.1 新建3D游戏场景 1. 打开Unity Hub,点击 New Project (新建项目)按键,选择第二项 3D(Built-In Render Pipeline)…...
Redis 性能优化选择:Pika 的配置与使用详解
引言 在我们日常开发中 redis是我们开发业务场景中不可缺少的部分。Redis 凭借其内存存储和快速响应的特点,广泛应用于缓存、消息队列等各种业务场景。然而,随着数据量的不断增长,单节点的 Redis 因为内存限制和并发能力的局限,逐…...
百度网盘限速难题如何破解?BaiduPCS-Web带来的下载体验革新
百度网盘限速难题如何破解?BaiduPCS-Web带来的下载体验革新 【免费下载链接】baidupcs-web 项目地址: https://gitcode.com/gh_mirrors/ba/baidupcs-web 三个直击痛点的灵魂拷问 你是否经历过这样的场景:加班回家想下载一份工作资料,…...
如何快速使用网盘直链下载助手:告别限速困扰的完整指南
如何快速使用网盘直链下载助手:告别限速困扰的完整指南 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天翼…...
MusePublic圣光艺苑入门必看:‘凝光成影’技术白皮书——光照建模原理简析
MusePublic圣光艺苑入门必看:‘凝光成影’技术白皮书——光照建模原理简析 “见微知著,凝光成影。在星空的旋律中,重塑大理石的尊严。” 1. 从画室到算法:光照建模的艺术与科学 当你站在一幅梵高的《星空》前,是否曾好…...
Wan2.2-I2V-A14B Anaconda虚拟环境管理:隔离依赖与复现实验
Wan2.2-I2V-A14B Anaconda虚拟环境管理:隔离依赖与复现实验 1. 为什么需要虚拟环境 在AI项目开发中,依赖管理是个让人头疼的问题。想象一下这样的场景:你花了两周时间调试好的模型,换台机器就跑不起来了;或者更新了某…...
OpenClaw学术研究助手:Qwen3-14b_int4_awq自动生成文献综述
OpenClaw学术研究助手:Qwen3-14b_int4_awq自动生成文献综述 1. 为什么需要AI辅助文献调研 作为一名计算机视觉方向的研究生,我每周需要阅读数十篇论文来跟踪领域进展。传统文献调研方式存在几个痛点:首先,手动下载和整理PDF文件…...
P1AM CPU库:工业级嵌入式I/O控制框架解析
1. P1AM CPU库技术解析:面向工业自动化场景的嵌入式I/O控制框架1.1 平台定位与工程价值P1AM(ProductivityOpen Automation Module)并非通用型MCU开发板,而是一个专为工业现场总线级I/O扩展设计的嵌入式控制器平台。其核心价值在于…...
【Python 教程15】-Python和Web
正则表达式:快准狠的“文本手术刀” 在 Python 的世界里,正则表达式(Regular Expression,简称 Regex)就像一把锋利的“手术刀”,能让你在杂乱无章的文本中,精准地切割、匹配、提取出你想要的部分…...
在Vivado里调通3/4删余卷积码Viterbi译码:从分支度量到回溯的完整避坑指南
Vivado平台实现3/4删余卷积码Viterbi译码的工程实践 在数字通信系统中,卷积码因其优异的纠错性能被广泛应用。802.11a等标准中采用的删余卷积码技术,通过有选择地删除部分编码比特来提高码率。本文将深入探讨如何在Vivado平台上实现3/4删余卷积码的Viter…...
如何改cad文件版本?盘点三个实用方法
在日常 CAD 绘图工作中,经常会遇到高版本 CAD 文件在低版本软件中无法打开、显示异常的问题。本文为大家整理了3 种实用的 CAD 版本转换方法,包含工具批量转换与两种代码实现方式,满足不同场景下的版本转换需求。方法一:汇帮 CAD …...
网安新手必刷的五个渗透测试靶场!黑客技术实战靶场零基础入门到精通教程!DVWA、Pikachu、SQLi-Labs、Upload-Labs、XSS-Labs靶场教程
前言 因为最近有任务需要搭建一些适合新手使用的靶场,所以收集了一下互联网常见的一些友好的新手渗透测试靶场。 分别是DVWA、Pikachu、SQLi-Labs、Upload-Labs、XSS-Labs。 DVWA靶场 DVWA靶场是一个专门用于漏洞测试和练习的Web应用程序,旨在为安全专业…...
