I have questions about the V2 plugin descriptor and related topics and would appreciate help.
As far as I understand, a V2 plugin descriptor is needed to implement split mode in a plugin (YouTube and template repo).
I would like to implement support for remote development/split mode, but I’m unsure about the best way to switch to a V2 descriptor.
I know that V2 is not officially recommended yet (anymore), but split mode would provide the best UI/UX experience and I don’t want to spend much time on non-split mode when I have to switch later anyhow.
Preparing a larger code base for split mode is much harder than doing it from the beginning.
-
Major versions.
I’m considering supporting 2025.2+.
Is that a version with relatively stable and complete V2 descriptors? -
Package attribute
2026.1 deprecated thepackageattribute in<idea-plugin package="...">.
I assumed that this is the way how earlier versions like 2025.2 detected a V2 descriptor. Are there any recommendations how to support 2025.2 to 2026.1? -
Packages in modules.
With 2026.1, is there still a requirement to keep modules in separate packages? For a classmy.plugin.a.b.c, how would the IDE know in which modules it’s located? -
Library dependencies in modules
Assuming a plugin depends on and bundles external libraryX.jar.
How can I makeXavailable to modules?
I found thatloading="embedded"makesXavailable to modules, but that would not work with optional modules.
Is there perhaps a way to declare a dependency on the libraries or a special module of the plugin, which providesX?
I’d appreciate your thoughts and feedback!
Thank you!