使用JDK 17运行IntelliJ IDEA以获得更好的Metal渲染性能


多年来,尽管 IntelliJ IDEA 是一个非常有价值的工具,但即使在这些最新的 M1 Pro 机器上,它也开始变得缓慢。
我发现您可以通过将 IDEA 切换到最新的 JDK 来提高性能。JetBrains 的运行时 带有 HiDPI 支持补丁、性能改进和错误修复,可以更顺畅地运行 IntelliJ 系列。
IntelliJ 发起了一项JEP-382 - Project Lenai 计划,将 Metal 引入 JDK 以用于 2D 渲染管道,从 b17 开始,它就出现在JDK 17 中
需要将以下标志添加到您的vmoptions,因为 Java 17更改了的封装机制会阻止访问内部模块。这里定义还强制使用 Metal:

  --illegal-access=warn
  -Dsun.java2d.metal=true
  --add-opens=java.desktop/java.awt.event=ALL-UNNAMED
  --add-opens=java.desktop/sun.font=ALL-UNNAMED
  --add-opens=java.desktop/java.awt=ALL-UNNAMED
  --add-opens=java.desktop/sun.awt=ALL-UNNAMED
  --add-opens=java.base/java.lang=ALL-UNNAMED
  --add-opens=java.base/java.util=ALL-UNNAMED
  --add-opens=java.desktop/javax.swing=ALL-UNNAMED
  --add-opens=java.desktop/sun.swing=ALL-UNNAMED
  --add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED
  --add-opens=java.desktop/java.awt.peer=ALL-UNNAMED
  --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED
  --add-exports=java.desktop/sun.font=ALL-UNNAMED
  --add-exports=java.desktop/com.apple.eawt=ALL-UNNAMED
  --add-exports=java.desktop/com.apple.laf=ALL-UNNAMED
  --add-exports=java.desktop/com.apple.eawt.event=ALL-UNNAMED

然后从https://github.com/JetBrains/JetBrainsRuntime/releases下载最新版本。
在 Idea 中启用这个新的JDK运行时,打开 Actions 以查找Choose Boot Java Runtime for the IDE并指向提取的文件夹。它会重新启动。
原文点击标题