关于IntelliJ IDEA 2024.1版本更新的问题
希望文章能给到你启发和灵感~
感谢支持和关注~
阅读指南
- 序幕
- 一、基础环境说明
- 1.1 硬件环境
- 1.2 软件环境
- 二、起因
- 三、解决
- 四、总结
序幕
近期,IntelliJ IDEA 推出了全新2024版本,相信很多编程的爱好者或者刚接触编程的小伙伴都会迫不及待更新和下载;版本升级毋庸置疑,在很多功能和体验上肯定是有很多提升的,这里博主就不多概述,主要记录一下前几天遇到的一个关于JDK的兼容问题;让一些小伙伴不踩坑;
一、基础环境说明
考虑环境因素,大家适当的对比自己的软硬件环境情况分析~
1.1 硬件环境
MacOS Monterey 版本 12.6.8 Apple M1(博主环境)
Windows 11 家庭版(问题环境)
1.2 软件环境
IntelliJ IDEA 2020.1.2(博主版本)
IntelliJ IDEA 2023.3(博主版本)
IntelliJ IDEA 2024.1(问题环境idea版本)
JDK8
二、起因
这里博主列出了两个硬件环境,因为在mac下,博主使用IntelliJ IDEA 2020.1.2和IntelliJ IDEA 2023.3,都能很好的适配JDK8的代码执行;
但是Windows 11 家庭版下,IDEA 2023.3能正常适配运行代码,但是新版的IntelliJ IDEA 2024.1却无法运行;当执行项目时,提示大致错误信息如下:
Abnormal build process termination:
"C:\Program Files\Java\jdk1.8.0_72\bin\java.exe" -Xmx700m -Djava.awt.headless=true "-Djna.boot.library.path=D:\idea\IntelliJ IDEA 2024.1/lib/jna/amd64" -Djna.nosys=true -Djna.noclasspath=true --add-opens jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED -Dcompile.parallel=false -Drebuild.on.dependency.change=true -Didea.IntToIntBtree.page.size=32768 -Djdt.compiler.useSingleThread=true -Daether.connector.resumeDownloads=false -Dio.netty.initialSeedUniquifier=1226091530544792288 -Dfile.encoding=GBK -Duser.language=zh -Duser.country=CN -Didea.paths.selector=IntelliJIdea2024.1 "-Didea.home.path=D:/idea/IntelliJ IDEA 2024.1" -Didea.config.path=C:/Users/32403/AppData/Roaming/JetBrains/IntelliJIdea2024.1 -Didea.plugins.path=C:/Users/32403/AppData/Roaming/JetBrains/IntelliJIdea2024.1/plugins -Djps.log.dir=C:/Users/32403/AppData/Local/JetBrains/IntelliJIdea2024.1/log/build-log "-Djps.fallback.jdk.home=D:/idea/IntelliJ IDEA 2024.1/jbr" -Djps.fallback.jdk.version=17.0.10 -Dio.netty.noUnsafe=true -Djava.io.tmpdir=C:/Users/32403/AppData/Local/JetBrains/IntelliJIdea2024.1/compile-server/indi_eaf41962/_temp_ -Djps.backward.ref.index.builder=true "-Djps.kotlin.home=D:\idea\IntelliJ IDEA 2024.1\plugins\Kotlin\kotlinc" -Dkotlin.incremental.compilation=true -Dkotlin.incremental.compilation.js=true -Dkotlin.daemon.ena
错误信息非常长,博主没有细看,只是看了内容中包括了部分JDK和IDEA版本的字眼;
add-opens jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED --add-opens
一开始只是以为JDK的配置问题,重新设置了JDK的环境变量,并在IDEA中配置对应的JDK信息,包括清理缓存和重启idea,但是问题依旧;
查阅了官方的兼容支持信息,在2024.1的版本下,其实是能看到兼容的;但是同套代码同JDK环境,在不同的版本Idea下的反馈不一样;就很让人费解!

于是乎,咨询了技术售后,大致的反馈是:

emm,说的比较官方,我们这里只能认为可能的原因是2024版对JDK8的适配度可能不够;
三、解决
【1】既然新版本适配不够,我们就将版本下降到了2023版;
【2】或者可以将JDK版本升级到JDK17等更高版本;
工程代码对JDK有要求的,选【1】;没要求的选【2】;更改后代码即可运行;
四、总结
其实博主也有看到一些博主,似乎也正常安装idea2024,并且在JDK8运行了,但是环境不同,情况也不同
所以关于这个问题有几点大家注意一下,作为参考即可;
【1】该问题出现在window11系统下,博主只有mac没有window,问题是在帮人部署时遇到的,所以并没有做太多尝试,不排除也可能是操作系统原因,也许windows11之前的版本可行;
【2】对于很多软件的更新,还是建议不要马上装最新版本,不是说新的不好,毕竟作为程序开发者来说,稳定才是王道,新品总是需要打磨一下的;否则少不了踩坑和bug的情况需要解决;
【3】任何类型软件的版本选择上,可以低一个版本使用,或者明确官方说明该版本是stable稳定版的下载,正常都不会有错;
【4】兼容性问题最磨人,多研究一下官网说明和其他人的使用情况来定位问题;
相关文章:
关于IntelliJ IDEA 2024.1版本更新的问题
希望文章能给到你启发和灵感~ 感谢支持和关注~ 阅读指南 序幕一、基础环境说明1.1 硬件环境1.2 软件环境 二、起因三、解决四、总结 序幕 近期,IntelliJ IDEA 推出了全新2024版本,相信很多编程的爱好者或者刚接触编程的小伙伴都会…...
双层循环和循环语句
echo 打印 echo -n 表示不换行输出 echo -e 表示输出转义字符 echo \b 相当于退格键(backspace) echo \n 换行,相当于回车 echo \f 换行,换行后的新行的开头连着上一行的行尾 echo \t 相当于tab健 (…...
【Codesys】-计算开机通电运行时间,累计正常使用时间,故障停机时间
应客户要求,在程序添加了这个用来计算开机运行时间,原理就是取当前时间减去一开始记录的时间,没什么特别要求,记录一下使用的变量类型和数据写法,防止忘记了。 下文只写了一个开机通电运行时间的写法,累计…...
LINUX系统编程:线程的概念
目录 1.线程的概念 2.线程的理解 3.怎么做到划分代码的 本文主要介绍,在LIUNX下的线程。 1.线程的概念 在很多的书上的你可能见过这样的。 线程是进程内部的一个执行分支,线程是cpu调度的基本单位。 加载到内存的程序叫做进程。修正:进…...
如何更换OpenHarmony SDK API 10
OpenHarmony社区已经发布OpenHarmony SDK API 10 beta版本,有些 Sample案例 也有需要API10。那么如何替换使用新的OpenHarmony SDK API 10呢?本文做个记录。 1、如何获取OpenHarmony SDK 1.1 每日构建流水线 可以从OpenHarmony每日构建站点获取最新的…...
Java | Leetcode Java题解之第155题最小栈
题目: 题解: class MinStack {Deque<Integer> xStack;Deque<Integer> minStack;public MinStack() {xStack new LinkedList<Integer>();minStack new LinkedList<Integer>();minStack.push(Integer.MAX_VALUE);}public void …...
大润发超市购物卡怎么用?
收到大润发超市的礼品卡以后,我才发现,最近的大润发也得十来公里 为了100块的大润发打车也太不划算了 叫外送也不在配送范围内 最后没办法,在收卡云上出掉了,还好最近价格不错,也不亏,收卡云的到账速度也…...
【ai】tx2-nx:搭配torch的torchvision
微雪的教程pytorch_version 1.10.0 官方教程安装torch官方教程 依赖项 nvidia@tx2-nx:~/twork/03_yolov5$ $ sudo apt-get install libjpeg-dev zlib1g-dev lib...
深入浅出MyBatis:全面解析与实战指南
MyBatis 是一个优秀的持久层框架,它简化了 Java 应用与关系数据库之间的映射。对于大多数 Java 开发者而言,掌握 MyBatis 是必不可少的一部分。本文将详细介绍 MyBatis 的各个方面,包括其基本原理、配置、操作、动态 SQL、插件机制和高级应用…...
好用的linux一键换源脚本
最近发现一个好用的linux一键换源脚本,记录一下 官方链接 大陆使用 bash <(curl -sSL https://linuxmirrors.cn/main.sh)# github地址 bash <(curl -sSL https://raw.githubusercontent.com/SuperManito/LinuxMirrors/main/ChangeMirrors.sh) # gitee地址 …...
机器人----控制方式
位置控制 点位控制 点到点--PTP 只关心起点和目标点,不关心走过的轨迹。 连续轨迹控制 CP(continus path) eg:焊接,切割。 力控制 使用多大的力进行控制。 eg:用多大的力写字。...
json的特点
JJSON是一种轻量级的数据交换格式,它基于JavaScript编程语言的一个子集,采用完全独立于语言的文本格式,结构化程度高。 JSON的主要特点包括: 轻量级:JSON的格式紧凑,易于传输和解析。 结构化:…...
【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 连续字母长度(100分) - 三语言AC题解(Python/Java/Cpp)
🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 …...
18 Shell编程规范与变量
目录 18.1 Shell脚本概述 18.1.1 Shell的作用 18.1.2 编写第一个Shell脚本 18.1.3 重定向与管道操作 18.2 Shell变量的作用、类型 18.2.1 自定义变量 18.2.2 特殊的Shell变量 18.1 Shell脚本概述 可以批量处理、自动化地完成一系列维护任务,大大减轻管理员的负担。…...
Linux基础命令大全(详解版)
Linux基础命令(详解版) 文章目录 Linux基础命令(详解版)1.Linux的目录结构**2.Linux路径的描述方式**3.Linux命令基础格式4.ls命令 隐藏文件、文件夹5.pwd命令6.cd命令 特殊路径符7.mkdir命令 文件操作命令8.touch命令9.cat命令10…...
python列表常见去重方法
列表去重在python实际运用中,十分常见,也是最基础的重点知识。 1. 使用for循环实现列表去重 此方法去重后,原顺序保持不变。 # for循环实现列表去重 list1 [a, 4, 6, 4, b, hello, hello, world, 9, 9, 4, a] list2 [] for l1 in list1:…...
usb摄像头应用编程
作者简介: 一个平凡而乐于分享的小比特,中南民族大学通信工程专业研究生在读,研究方向无线联邦学习 擅长领域:驱动开发,嵌入式软件开发,BSP开发 作者主页:一个平凡而乐于分享的小比特的个人主页…...
康谋分享 | 自动驾驶联合仿真——功能模型接口FMI(一)
功能模型接口FMI(Functional Mock-up Interface)是一个开放且与工具解耦的标准。FMI包含了一个C-API(接口),一个用于描述接口的XML文件以及可交换的功能模型单元FMU(Functional Mock-up Unit)&a…...
OPenCV中绘制多条多边形曲线函数polylines的使用
操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:Visual Studio Code编程语言:C11 功能描述 绘制多条多边形曲线 原型1 void cv::polylines ( InputOutputArray img, InputArrayOfArrays pts, bool isClosed, const Scalar & color…...
气膜球幕影院:娱乐体验的新高度—轻空间
气膜球幕影院以其独特的全景沉浸体验和丰富的娱乐内容,成为了现代娱乐产业的重要组成部分。轻空间带您来探索一下气膜球幕影院带来的独特娱乐体验。 全景沉浸式体验 气膜球幕影院的360度全景沉浸式体验,彻底改变了传统观影方式。观众被包围在一个球形屏幕…...
C#异步编程完全指南:async/await背后的状态机原理
# C#异步编程完全指南:async/await背后的状态机原理## 引言在现代软件开发中,异步编程已成为构建高响应、高吞吐量应用程序的基石。C# 作为一门不断演进的现代编程语言,从 .NET Framework 4.5 开始引入了 async 和 await 关键字,彻…...
ROS2 Jazzy尝鲜指南:在Ubuntu 24.04上从安装到跑通第一个Demo(附常见错误修复)
ROS2 Jazzy尝鲜指南:在Ubuntu 24.04上从安装到跑通第一个Demo Ubuntu 24.04 LTS的发布带来了全新的ROS2 Jazzy版本,这对机器人开发者来说无疑是一次令人兴奋的技术升级。作为长期支持版本,Jazzy将在未来五年内获得官方维护,这意味…...
PCB首次上电安全操作与防炸板指南
PCB首次上电安全操作指南:从炸板事故中汲取的工程经验1. 硬件工程师的必修课:上电安全1.1 典型上电事故案例分析在嵌入式硬件开发领域,PCB首次上电环节隐藏着诸多技术风险。根据行业调查,约78%的硬件工程师在其职业生涯中至少经历…...
36 Python 时序和文本:中文文本处理入门:为什么要先做分词和停用词过滤?
中文文本处理入门:为什么要先做分词和停用词过滤? 刚接触文本分析时,很多人都会有一个疑问: 文本明明已经有内容了,为什么不能直接拿去做分类、聚类或者情感分析? 这个问题其实正好指向了文本挖掘里最基础、…...
Go-Gin-API跨域处理终极指南:5分钟配置CORS中间件
Go-Gin-API跨域处理终极指南:5分钟配置CORS中间件 【免费下载链接】go-gin-api xinliangnote/go-gin-api 是一个用于快速构建 Go 语言 API 的框架。适合在Go语言开发的Web应用中使用,提供丰富的中间件和模块化架构。特点是提供了简洁的API、自动化API文档…...
新手入门:用快马平台生成第一个labelimg式图像标注demo
今天想和大家分享一个特别适合计算机视觉新手的小项目——用InsCode(快马)平台快速搭建一个简易版的图像标注工具。这个工具类似labelimg的核心功能,但更轻量级,能帮助理解数据标注的基本流程。 项目背景理解 图像标注是计算机视觉的基础环节,…...
RMBG-1.4动态演示:AI净界处理长发人物的流畅抠图过程
RMBG-1.4动态演示:AI净界处理长发人物的流畅抠图过程 1. 引言:当抠图遇上飘逸长发 你有没有遇到过这样的烦恼?想给一张长发飘飘的人像照片换个背景,结果发现发丝边缘怎么都处理不干净,要么像被狗啃过一样参差不齐&am…...
SEO_2024年最新SEO趋势与核心优化方法介绍
<h1 id"seo2024seo">SEO:2024年最新SEO趋势与核心优化方法介绍</h1> <p>在互联网时代,搜索引擎优化(SEO)仍然是网站流量和品牌推广的关键。2024年,SEO领域有许多新的趋势和核心优化方法,帮…...
DeepSeek LintCode 3867 · 范围内的数字计数 public int digitsCount(int d, int low, int high)
LintCode 3867 范围内的数字计数 问题分析 计算在区间 [low, high] 中,数字 d 出现的次数。 核心思想:使用数位DP或前缀和思想 • count(low, high) count(0, high) - count(0, low-1) 方法一:逐位统计法(推荐)AC pu…...
DAC高速线缆市场洞察:预计到2032年将增长至180.8亿元
据恒州诚思调研统计,2025年全球DAC高速线缆市场规模达66.60亿元,预计到2032年将增长至180.8亿元,2026-2032年复合增长率(CAGR)为14.7%。作为数据中心短距离互连的核心组件,DAC高速线缆凭借其低延迟、高可靠…...
