这两天(20200409)手欠升级了DataGrip(JetBrains的数据处理工具),没想到升级完成后一打开就报了下面的错误:
Tried to use preview panel provider (JavaFX WebView), but it is unavailable. Reverting to default.
后来发现是markdown文档插件的问题。关键是这个Markdown插件是JetBrains官方提供的,没想到居然也会报错。
因为吃过一次类似的亏,所以后来注意到错误提示中的 JavaFx 字样后第一反应就是“ 是不是DataGrip嵌入的JRE升级到了JDK11 ”。
查看DataGrip的 about信息 ,看到JDK版本是 11.05 。看样子就是这个问题了。
第一个思路是将JavaFx的相关依赖放到Markdown插件的lib目录下。去 官网 下载了JavaFx,解压后将lib目录下的jar文件放到Markdown插件的lib目录下,重启,继续报错。该方案失败!
第二个思路很直接,既然放在插件目录下不行,那就放到DataGrip的依赖目录下。这次尝试将JavaFx的jar放到DataGrip安装目录下的 lib 目录下。重启DataGrip,打开Markdown文件后没有报错,我一度以为我成功了,但是接下来就发现DataGrip卡死了。只好杀死进程,删除放到DataGrip安装路径lib目录下的JavaFx相关jar后再想其他办法。
第三个方案是在 JetBrains社区 找到的,是可行的。所以简要介绍下步骤:
重启后打开Markdown文件不再报错。问题得到解决。不过,美中不足的是发现打开的DataGrip多了一个难看的Windows标题栏。解决的方法也比较简单,换一个本机安装的JetBrains其它产品(比如IDEA或PyCharm)的嵌入JRE就可以了。
JetBrains也有提供独立的JRE, 点击此处 进行下载。
修改“ idea.config.path/<product>.exe.jdk ”文件也可以完成JRE的配置。
JetBrains嵌入的JRE在本机的地址为产品安装目录下的jbr目录,比如我机器上DataGrip嵌入的JRE路径如下:
D:/Program Files/JetBrains/DataGrip 2020.1/jbr
就这样!End!