MacOS14.4 + Java = 崩溃!!!

大家好,我是喜欢折腾,热爱分享的"一只韩非子 "。

关注微信公众号:会编程的韩非子

添加微信号:Hanfz0712

免费加入问答群/知识交流群,一起交流技术难题与未来,让我们Geek起来!

使用Mac开发Java的好兄弟们,最近你们还好吗,不知道你们对下面这张图熟不熟悉。

我是很熟悉啊,而且今天就遇到了两次0.0,那么到底是怎么回事呢?

1.场景复现

下午起床,洗把脸开始上班。很有感觉哈,思考问题脑子变快了,手上的代码也快了起来。正当我洋洋得意感觉就要大功告成的时候,突然,很快啊,我他喵的IDEA没了。突然返回到了桌面,我甚至都没反应过来发生了什么事,然后就弹出了上面那个非常让人想把它枪毙五分钟的弹窗。我IDEA崩溃了!!!不过,还好,IDEA向来智能,还会自动保存。然后我就点击了重新打开,打开后我是真的傻眼了。

我代码呢???啊???IDEA我代码呢???说好的自动保存呢?

然后我又找了下本地历史,发现也没有记录,真的G了,快一个小时的汗水白流了。。。我直接想骂街。那又能怎么办呢,只能在跟同事吐槽几句后,重新来过。

生活就是这样,每时每刻都在发生我们无法控制的事情,尽管你很委屈,尽管那是你努力很久很久的东西,但是我们无能为力。我们只能选择擦干眼泪,重新再来。你要习惯,这就是生活。

2.情景再现

就在我感慨完之后,又是一顿行云流水写完了代码,然后点击小虫子按钮准备DeBug时,好家伙,他又来了。 不过好消息是,这次大部分代码还在,只有一小部分丢失了。


生活,生活,这就是生活,我要坚强┭┮﹏┭┮

3.抓到罪魁祸首

总是感觉不太对劲,从做开发到现在,说实话还从未遇到如此场景。心里除了崩溃之外还存在着疑惑,到底是什么导致一天出现两次这种情况。

晚上逛掘金的时候让我找到了这个答案。

感谢@程序猿DD的文章:juejin.cn/post/734700...

原来是你,我最信赖的MacOS。

原来官方早在3.15就发布了一篇博客,里面讲解了macos14.4中运行java程序会有导致崩溃的情况。大致意思是,在macos14.4之前,系统会向访问受保护区域的进程发送两种信号SIGBUS和SIGSEGV,进程可以选择处理信号并继续运行。但是在macos14.4中,这个信号变了,变成了新的信号SIGKILL,然后我们的java进程没法处理这个信号,所以进程就被无条件的杀死了。

而且影响从 Java 8 到 JDK 22 的早期访问版本的所有 Java 版本。并且目前没有可用的解决方法。

(帮好兄弟们翻译一下)

再看看我的系统版本,好家伙,没谁了,帮苹果测试系统兼容性了。

4.懊悔ing

现在的我已经想象到未来一段时间IDEA接连崩溃的情况了


希望官方大大能够赶快解决这个问题。在此之前,就得看,是它崩溃得快还是我git commit的快了。

相关推荐
寒山李白1 小时前
关于Java项目构建/配置工具方式(Gradle-Groovy、Gradle-Kotlin、Maven)的区别于选择
java·kotlin·gradle·maven
QX_hao1 小时前
【Go】--map和struct数据类型
开发语言·后端·golang
无妄无望2 小时前
docker学习(4)容器的生命周期与资源控制
java·学习·docker
MC丶科2 小时前
【SpringBoot 快速上手实战系列】5 分钟用 Spring Boot 搭建一个用户管理系统(含前后端分离)!新手也能一次跑通!
java·vue.js·spring boot·后端
千码君20162 小时前
React Native:从react的解构看编程众多语言中的解构
java·javascript·python·react native·react.js·解包·解构
G探险者2 小时前
为何一个系统上线要经过N轮测试?带你看懂企业级发布体系
后端
夜白宋3 小时前
【word多文档docx合并】
java·word
@yanyu6663 小时前
idea中配置tomcat
java·mysql·tomcat
2501_916766543 小时前
【项目部署】JavaWeb、MavenJavaWeb项目部署至 Tomcat 的实现方式
java·tomcat