JetBrains 开发工具使用最新的 JBR 提高性能

2021-10-05 11:46:38 +08:00
 huijiewei

JetBrains Runtime (即 JetBrains 运行时)是一个运行时环境,用于在 Windows,Mac OS X 和 Linux 上 运行 IntelliJ 平台的各种产品。JetBrains Runtime 基于 OpenJDK 项目,并进行了一些修改。这些修改包括:抗锯齿,Linux 上增强的字体渲染,HiDPI 支持,连字,一些官方版本中未提供的针对产品崩溃的修复程序以及其他小的增强功能。

目前 JetBrains 的开发工具默认使用基于 JDK11 版本的 JBR,而 JDK11 版本的 java2d 使用 OpenGL 来渲染图形基元。JDK 17 的 java2d 使用了 Metal 框架提供更好的性能,并更好地支持现代 macOS 版本和硬件。所以我们现在可以更换 JBR 版本以提高 macOS 下 JetBrains 开发工具的性能。

现在我们开始更换开发工具的 JBR

  1. 下载最新的 JBR https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr17b106.1
  2. 更改开发工具的 VM Options, Help -> Edit Custom VM Options, 增加以下参数
--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

  1. 安装 Choose Runtime 插件

  1. 使用 Choose Runtime 插件安装并使用最新的 JBR,Help -> Find Action,搜索 Choose Runtime 并运行

点击 ... 按钮浏览并选择第一步下载的 JBR 压缩包,然后点击 Install

安装完以后开发工具会自动重启,现在可以看到已经使用了 JDK 17 版本的 JBR

https://blog.huijiewei.com/note/jetbrains-jbr-17

6106 次点击
所在节点    JetBrains
18 条回复
NowTime
2021-10-05 11:48:14 +08:00
可以,待会试试
wen704
2021-10-05 11:56:19 +08:00
可以,国庆后去公司试下
leaves615
2021-10-05 12:18:56 +08:00
非常棒。
bomb77
2021-10-05 12:46:20 +08:00
我不知道自己什么情况,配置了之后会导致 glang 起不来
如果出现这样的问题,可以去 jetbrains 对应的文件夹,删除 xxx.jdk 文件,清除增加的 xxx.vmoptions 内容,可以恢复之前的配置
PDX
2021-10-05 14:07:57 +08:00
nice
echohey
2021-10-05 14:13:47 +08:00
@bomb77 也碰见了,用 idea.bat 启动看了下报错,的确是 vmoptions 有些问题,不过没深究,删了就好了,
prenwang
2021-10-05 14:19:18 +08:00
macos 下有个全屏问题, 切换到全屏无法退出全屏, 也无法切换屏幕, 搜索桌面切换背景全黑, 无法切换到其他任何应用, 只能在内置终端 kill
wzw
2021-10-05 14:21:59 +08:00
有很大提升吗? 特别是 Goland 的 debug 的时候
stimw
2021-10-05 16:00:24 +08:00
官方会更新到之后的版本么?
varzy
2021-10-05 17:09:49 +08:00
感谢楼主,收藏了。国庆回单位了试一试
hronro
2021-10-05 19:34:51 +08:00
为啥官方不用最新的呢?应该还不稳定吧
br00k
2021-10-05 21:55:43 +08:00
看 JDK17 Metal 和 OpenGL 的对比,提升了挺多的。😂
Jwyt
2021-10-06 00:25:24 +08:00
可以 回去试下
jackytang520
2021-10-06 07:54:39 +08:00
昨天晚上试了一下成功了,目前没发现什么问题
jackytang520
2021-10-06 08:46:28 +08:00
@prenwang 我也有同样的问题,还是先用默认的吧
wen704
2021-10-06 09:46:11 +08:00
突然发现一个问题,如果未来 JB 产品自带的 JDK 版本更新了,而现在操作选定指定的新版本 Runtime,会不会就一直被限定在自己选择的版本,但是自己好像也不知道 JB 产品自带的 JDK 版本是不是更新了
smy14520
2021-10-08 16:37:35 +08:00
发现一个问题, Command+~ 没法在应用之间切换了.
Vitta
2021-10-09 10:05:45 +08:00
我的 appcode 挂了打不开了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/805934

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX