Why does IDE needs to be restarted after plugin is installed/uninstalled, enabled/disabled?


I tried to find the answer of this question in the community but I couldn't. I am wondering why does IDEs need to be restarted whenever plugin is installed, uninstalled, enabled, or disabled?

Aren't we living in 2020? A time where such restarts doesn't make sense? Imagine if the operating systems asked you to restart every time you installed or uninstalled or disabled some software (exit from menu, system tray, kill the background helper process, etc.)? Well that's how it feels like when IntelliJ based IDEs ask me to restart it after a simple plugin enable/disable?

In another thread someone asked about a feature to enable/disable plugins on project basis.

I wonder, why haven't we have this feature yet or why haven't anyone in community created a plugin like this? I think, the bottleneck or roadblock was that need of restarting the IDE.

Intellij IDEs are actually platforms, and if you have proper architecture, APIs, systems (garbage collections, state management, data protection, etc -- whenever plugins load or unload) in place, plugins won't require IDE restart. As a software developer myself, I won't want my users to restart IDE when they install my plugin, if I have to do that because of issues in the underlying platform then it's such a shame.

This is the kind of bottlenecks or roadblocks need to be removed from IDEs (plugin API, SDK), so the plugin developer community is empowered to deliver some amazing experiences via their plugins inside your IDEs.

The VSCode, isn't even 1/4th old than you are, is able to do both things -- not require restart; allows enabling/disabling plugins for workspaces (projects?).


That said, I moved from VSCode to WebStorm (and IntelliJ Ultimate) for only one reason -- I need a solid VIM support, and VSCode was slow whenever I used VIM plugin in there. As I used it full-time, I started liking IntelliJ IDEs and used all days for last two years. I must tell I have used IntelliJ IDEs since early 2000 at companies I worked for (or my own -- community versions). I had purchased licenses of 2-3 variants in 2014, have been kept ugrading since then -- now on subscriptions. I have been paying for that long but started using full time only two years back.

I hope to see IDEs get better and better, and I don't have to look around or go back to VSCode.







Since 2020.1, there is support for Dynamic Plugins, which is precisely what you're asking for - installing and updating plugins without the IDE restarting.

Such feature is also described in our SDK Docs: Dynamic Plugins to let developers adjust their plugins to the new API. We're continually working on improving this feature, but even now, many plugins support it.

Like every significant change in the (plugins) API, there is some time needed to propagate new features across the 3rd party developers. Still, as you can see - we're in the right direction to enhance this part of the users' experience. Stay tuned!


When I disable/enable plugins in CLion and then immediately close CLion, the message "Restart CLion to apply changes in plugins" is displayed but CLion doesn't restart. I have discovered that if I do something else other than close CLion, the restart message is displayed and then the restart does work. Therefore, this is probably only a bug with displaying the restart message upon close. So you probably want to skip the restart message for the case of immediate close by user after enable/disable plugin(s).

(CLion and IntelliJ share the same IDE framework if I'm not mistaken).