i'm currently working on a IntelliJ IDEA plugin for RoboVM as well as a custom build of CE that integrates the plugin out of the box. Compiling and installing the plugin standalone works as intended. Integrating the plugin in a checkout of IntelliJ IDEA CE (master or latest release branch) produces different classloader issues.
The plugin depends on a fat jar containing among other things a specific version of ASM, commons-io and other utility libraries. I added the plugin module to the CE project, added it as a dependency to the community-main module used to launch the IDEA run config, and also added it to the layout.gant file for CLI builds.
When running the IDEA run config, i get classloader errors related to the libraries included in the far jar. E.g. different methods of IOUtils from commons-io can not be found, which means some part of IDEA or a plugin IDEA ships with is pulling in an older version somewhere.
As per the plugin developer docs i'd have expected that the plugin classloader would prioritize the libraries the plugin depends on above the libraries pulled in by IDEA or other plugins.
I'm a bit at a loss at how to resolve this issue and would be greatful for any input.