mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[remote dev] don't remove JARs of embedded modules from the plugin main module's classpath (IJPL-179421)
Otherwise, if an embedded module is included in the same JAR file as the main plugin module, it'll be removed from the classpath, and the plugin will fail to load. GitOrigin-RevId: bcf1e54fcb088749da4be35ae192304c677c032b
This commit is contained in:
committed by
intellij-monorepo-bot
parent
44fad3ea7a
commit
01d4250084
+4
-1
@@ -259,7 +259,10 @@ internal class ModuleBasedProductLoadingStrategy(internal val moduleRepository:
|
||||
val pluginDir = pluginDir ?: mainResourceRoot.parent.parent
|
||||
loadDescriptorFromJar(mainResourceRoot, context, zipFilePool, pathResolver, isBundled = isBundled, pluginDir = pluginDir)
|
||||
}
|
||||
val modulesWithJarFiles = descriptor?.content?.modules?.flatMap { it.requireDescriptor().jarFiles ?: emptyList() }
|
||||
val modulesWithJarFiles = descriptor?.content?.modules?.flatMap { moduleItem ->
|
||||
val jarFiles = moduleItem.requireDescriptor().jarFiles
|
||||
if (moduleItem.loadingRule != ModuleLoadingRule.EMBEDDED && jarFiles != null) jarFiles else emptyList()
|
||||
}
|
||||
descriptor?.jarFiles = allResourceRootsList.filter { modulesWithJarFiles == null || it !in modulesWithJarFiles }
|
||||
return descriptor
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user