MacOS 上的 Raku Comma IDE 无法启动

Raku Comma IDE on MacOS won't start

与之前的 SO 相比,我取得了一些进展,但是 运行 出现了新的错误...

Internal error. Please refer to http://jb.gg/ide/critical-startup-errors

java.lang.ExceptionInInitializerError
    at com.intellij.ide.IdeEventQueue.<clinit>(IdeEventQueue.java:80)
    at com.intellij.idea.StartupUtil.replaceSystemEventQueue(StartupUtil.java:749)
    at com.intellij.idea.StartupUtil.patchSystem(StartupUtil.java:733)
    at com.intellij.idea.ApplicationLoader.executeInitAppInEdt(ApplicationLoader.kt:59)
    at com.intellij.idea.ApplicationLoader.access$executeInitAppInEdt(ApplicationLoader.kt:1)
    at com.intellij.idea.ApplicationLoader$initApplication.run(ApplicationLoader.kt:366)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:316)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
    at java.desktop/java.awt.EventQueue.run(EventQueue.java:721)
    at java.desktop/java.awt.EventQueue.run(EventQueue.java:715)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make field protected java.lang.Runnable java.awt.event.InvocationEvent.runnable accessible: module java.desktop does not "opens java.awt.event" to unnamed module @5fdea98c
    at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:357)
    at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
    at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:177)
    at java.base/java.lang.reflect.Field.setAccessible(Field.java:171)
    at com.intellij.util.ReflectionUtil.findFieldInHierarchy(ReflectionUtil.java:153)
    at com.intellij.util.ReflectionUtil.findAssignableField(ReflectionUtil.java:141)
    at com.intellij.openapi.application.impl.InvocationUtil.findRunnableField(InvocationUtil.java:49)
    at com.intellij.openapi.application.impl.InvocationUtil.<clinit>(InvocationUtil.java:24)
    ... 19 more

-----
JRE 16+36-2231 x86_64 by Oracle Corporation
/Library/Java/JavaVirtualMachines/jdk-16.jdk/Contents/Home

这是 macOS Catalina Intel 10.15.7,适用于 macOS 的最新 CommaIDE,

java version "16" 2021-03-16
Java(TM) SE Runtime Environment (build 16+36-2231)
Java HotSpot(TM) 64-Bit Server VM (build 16+36-2231, mixed mode, sharing)

java version "16" 2021-03-16

逗号需要它是主要版本 11(因为底层 IntelliJ 平台也需要)。 Corretto 11 分布可能是一个不错的选择。

为了避免人们担心这一切,Comma 还捆绑了自己的私有 JRE。不幸的是,最近的一些版本在 Mac 上的捆绑有问题。 Comma Complete 2021.03(商业版)已经修复,2021.04免费Comma Community中修复。