mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-03-22 15:19:59 +07:00
[modular loader] diagnostics: provide more information in the exception message if plugin.xml cannot be found
GitOrigin-RevId: c9e5962ee5374fe4494d788ebe20ffa21f2cad8f
This commit is contained in:
committed by
intellij-monorepo-bot
parent
e3e3bdedcd
commit
7360d9e266
@@ -49,6 +49,10 @@ class OriginalModuleRepositoryImpl(private val context: CompilationContext) : Or
|
||||
override fun readResourceFile(moduleId: RuntimeModuleId, relativePath: String): InputStream? {
|
||||
return context.findFileInModuleSources(context.findRequiredModule(moduleId.stringId), relativePath)?.inputStream()
|
||||
}
|
||||
|
||||
override fun toString(): String {
|
||||
return "source file based resolver for '${context.paths.projectHome}' project"
|
||||
}
|
||||
}
|
||||
return ProductModulesSerialization.readProductModulesAndMergeIncluded(productModulesFile.inputStream(), productModulesFile.pathString,
|
||||
resolver)
|
||||
|
||||
@@ -33,7 +33,11 @@ interface ResourceFileResolver {
|
||||
return object : ResourceFileResolver {
|
||||
override fun readResourceFile(moduleId: RuntimeModuleId, relativePath: String): InputStream? {
|
||||
return moduleRepository.getModule(moduleId).readFile(relativePath)
|
||||
}
|
||||
}
|
||||
|
||||
override fun toString(): String {
|
||||
return "default resolver"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,8 @@ public final class PluginXmlReader {
|
||||
addedModules.add(mainModule.getModuleId().getStringId());
|
||||
try (InputStream inputStream = resourceFileResolver.readResourceFile(mainModule.getModuleId(), PLUGIN_XML_PATH)) {
|
||||
if (inputStream == null) {
|
||||
throw new MalformedRepositoryException(PLUGIN_XML_PATH + " is not found in '" + mainModule.getModuleId().getStringId() + "' module in " + repository);
|
||||
throw new MalformedRepositoryException(PLUGIN_XML_PATH + " is not found in '" + mainModule.getModuleId().getStringId() + "' module in "
|
||||
+ repository + " using " + resourceFileResolver + "; resources roots: " + mainModule.getResourceRootPaths());
|
||||
}
|
||||
XMLStreamReader reader = XMLInputFactory.newDefaultFactory().createXMLStreamReader(inputStream);
|
||||
int level = 0;
|
||||
|
||||
@@ -67,6 +67,10 @@ private fun loadProductModules(moduleRepository: RuntimeModuleRepository, projec
|
||||
override fun readResourceFile(moduleId: RuntimeModuleId, relativePath: String): InputStream? {
|
||||
return resourceFileFinder.findResourceFile(moduleId.stringId, relativePath)?.inputStream()
|
||||
}
|
||||
|
||||
override fun toString(): String {
|
||||
return "source file based resolver for '$projectHome' project"
|
||||
}
|
||||
}
|
||||
val productModulesPath = "META-INF/$rootModuleName/product-modules.xml"
|
||||
val productModulesXmlStream = resourceFileResolver.readResourceFile(RuntimeModuleId.module(rootModuleName), productModulesPath)
|
||||
|
||||
Reference in New Issue
Block a user