現象
JetBrains IDE (WebStorm/PHPStorm など) の 2020.2 以降のバージョンに、Sencha JetBrains Plugin をインストールすると、IDE がクラッシュします。再起動するとプラグインが disable にされますので、Sencha JetBrains Plugin を使用することはできません。
サポートの現状
この件について、Sencha の公式サポートに連絡しました。
次の回答が来ました。(DeepLで翻訳)
これは、IntelliJ製品の2020.2バージョンの既知の問題であり、IntelliJがこのリリースのために使用したGroovyのバージョンとプラグインがビルドされたバージョンの非互換性によって引き起こされます。我々はこの問題に対処している最中であり、うまくいけばIDEプラグインの次期リリースで解決されることを期待しています。
この返事をもらってから1ヶ月以上経ちますが、まだ次期リリースとやらは出る気配がありません。
解決策
さすがに、新しいバージョンの IDE を使いたいのでなにか対策はないかと調べたところ、Sencha Forum でこの記事を見つけました。
I see this error in IntelliJ 2020.2 during startup:
Caused by: groovy.lang.GroovyRuntimeException: Conflicting module versions. Module [groovy-xml loads in version 2.5.8 and you try to load version 2.5.11
I was able to fix this by removing the groovy * -2.5.8 * .jar files from the plugin. The plugin seems to work with 2.5.11. I have not tested the plugin thoroughly, but have not seen any errors yet. This is, of course, a temporary solution.On my windows 10 machine the Sencha plugin are located here: C:\Users<my user id>\AppData\Roaming\JetBrains\IntelliJIdea2020.2\plugins\sencha-jetbrains-plugin\lib. I just deleted all the groovy jars and the enabled the plugin again.
プラグインのディレクトリを見つけて、そこにある groovy*-2.5.8.jar
を削除するといいよ、と書いてあります。IDE 本体との間でバージョン競合しているので、プラグイン側から groovy を削除することで動作するということらしいです。ずいぶん乱暴な方法に見えますが...
プラグインのディレクトリはどこにあるのか
PHPStorm の公式マニュアル に場所が書いてあります。
macOS の場合は次のディレクトリになります。
~/Library/Application Support/JetBrains/<product><version>/plugins
Toolbox を使っている場合
しかし私の環境では、上記のディレクトリが存在しませんでした。
非常に混乱しましたが、どうも JetBrains Toolbox を入れている場合は違うディレクトリになるようです。
~/Library/Application Support/JetBrains/Toolbox/apps/PhpStorm/ch-0/202.6948.87/PhpStorm.app.plugins
202.6948.87
という部分はバージョンによって変わるのではないかと思います。同様に環境によっては ch-0
以外のディレクトリもあるかもしれません。
実施
上記でみつけた plugins ディレクトリから、groovy*-2.5.8.jar
を削除します。
3つのファイルがあると思います。
- groovy-2.5.8.jar
- groovy-xml-2.5.8.jar
- groovy-json-2.5.8.jar
これらを削除します (私の場合は他のディレクトリに移動しました)。 次に IDE を起動し Sencha JetBrains Plugin を有効にします。そして IDE を再起動します。
Sencha JetBrains Plugin を使うことができるようになりました。