Service management partially broken in recent IDE releases

No, for sure it’s just a coincidence that it touches run configuration instances very early. But please note that it causes a poor startup performance problem (minor one probably) when you do that.

Thanks for the link!

Oh my, so in this particular case, BashSupport Pro is searching for RunConfigurationProducer, which initializes the registered extensions. A producer of com.microsoft.azure.hdinsight.spark is searching for a ConfigurationType and a ConfigurationType from software.aws.toolkits is accessing a static Icon, which then triggers the IconPatcher, which uses a service and that causes an LOG.error(…).

I’ll see what I can do to delay this, but I’m not sure yet what’s possible here.

Nonetheless, this will be just a one of many possible stacktraces of other plugins triggering this and the IconPatcher should be made safe, if possible.

What task do you solve by doing that? Can you do that on-demand?

Also, ComponentManagerImpl:checkOutsideClassInitializer could log a warning message. And it could continue to log an error message only in unit/integration tests.

This way, maintained plugin would have time to publish fixes. For unmaintained plugins, especially if the until-build field is ignored in a near future (:blush:), we would avoid these error reports.

That’s for compatibility with the Shell plugin.

I’ve made changes to avoid eager init of the queried extension points and moved init code, which can be delayed, to a ProjectActivity. This will be part of the next update, which will be out very soon.

1 Like

Thank you so much, this helps

Could you please create a topic for the second problem of ClassCastException? We will take a look and may be make it more helpful for others as well

Sure. I created https://youtrack.jetbrains.com/issue/IDEA-377026/java.lang.ClassCastException-on-service-invocation

1 Like