- new options
- don't highlight such imports as unused
- delete imports of nested modules
- preserve high-level modules during 'optimize import'
GitOrigin-RevId: 3728f41a934f320767caac0a643a5869ccc84bcc
Fake packages were used to ensure that the main plugin classloader is used to load the classes from content modules. Now the same can be achieved explicitly with loading="embedded" attribute. This is also needed to ensure that the classpath for content modules can be properly specified (this is needed for IJPL-165692).
Also, it's possible to use auto-layout for the plugin, so there is no need to specify it explicitly.
GitOrigin-RevId: 6a75b4868b796215018d230949752bc978c60476
We need to have root packages for module xml files in plugin model v2, but if we specify packages with real classes in these modules, they'll fail to load with "must not be requested from main classloader" error, because inter-module dependencies aren't specified for these files. If we specify module dependencies, the big 'com.intellij.java' plugin will fail to load because it isn't migrated to plugin model v2 yet and includes contents of these module descriptors via xi:include tag. So it seems that we need to use fake packages without real classes until 'com.intellij.java' plugin is migrated to plugin model v2.
Check in InterfaceExtensionImplementationClassResolver is suppressed for 'com.intellij.java.frontend' plugin as well for now.
GitOrigin-RevId: 7b2321835becc9f4589ddae09a40160bf735044e