Oracleは3月15日(現地時間)、macOS Sonoma 14.4で導入された問題により、Javaプロセスが予期せず終了する現象が発生していることを明らかにしました(MacRumors)。
不具合はAppleシリコン(M1、M2、M3)を搭載したMacで発生し、Java 8からJDK 22の早期アクセスビルドまでの、すべてのJavaバージョンに影響を及ぼしています。
回避策はなく、macOSのアップデートを元に戻す簡単な方法もないため、影響を受けたユーザーはバックアップがない限り安定した構成に戻せない可能性があります。
Oracleの製品管理担当シニア・ディレクターであるアウレリオ・ガルシア=リベイロ氏はブログ記事で次のように説明しています。
An issue introduced by macOS 14.4, which causes Java process[es] to terminate unexpectedly, is affecting all Java versions from Java 8 to the early access builds of JDK 22. There is no workaround available, and since there is no easy way to revert a macOS update, affected users might be unable to return to a stable configuration unless they have a complete backup of their systems prior to the OS update.
macOS 14.4で発生したJavaプロセスが予期せず終了する問題は、Java 8からJDK 22の早期アクセスビルドまでのすべてのJavaバージョンに影響を及ぼしています。回避策はなく、macOSのアップデートを元に戻す簡単な方法もないため、影響を受けたユーザーは、OSアップデート前のシステムの完全なバックアップがない限り、安定した構成に戻せない可能性があります。
ブログ記事とバグレポートには、この問題に関する技術的な詳細が含まれている。
不具合はmacOS 14.4のアーリーアクセスには存在せず、正式版がリリースされてから発見された問題だとのこと。
OracleはAppleやOpenJDK等のパートナーにこの状況を通知し、Appleシリコン搭載MacでJavaを使用しているユーザーに対しては、問題が解決するまで14.4へのアップデートを延期することを推奨しています。
なお不具合の原因に関しては、特定の保護されたメモリ領域内のメモリにアクセスする場合に、以前はSIGBUSまたはSIGSEGVシグナルがプロセスに送信されていたものの、macOS 14.4ではSIGKILLが送られてきて、プロセスが処理できなくなったことが原因だとされています。詳細はブログ記事で可能です。またこの問題に関する議論がHacker Newsでも行われています。