[jps-to-bazel] Generate dependencies if no source roots but resources in BazelBuildFileGenerator#computeModuleList (IJI-3028)

Mainly to fix an incomplete dependency graph.

GitOrigin-RevId: 0c77426eeecce04a8b86bf2df668ad15d65c22e8
This commit is contained in:
Ilia Kirianovskii
2025-10-15 09:25:34 +00:00
committed by intellij-monorepo-bot
parent 111430e550
commit 969c97e1df
2 changed files with 9 additions and 6 deletions
@@ -335,12 +335,15 @@ internal class BazelBuildFileGenerator(
val result = ModuleList(community = community, ultimate = ultimate, skippedModules = skippedModules)
for (module in (community + ultimate)) {
val hasSources = module.sources.isNotEmpty()
if (hasSources || module.testSources.isEmpty()) {
val hasResources = module.resources.isNotEmpty()
val hasTestSources = module.testSources.isNotEmpty()
val hasTestResources = module.testResources.isNotEmpty()
if (hasSources || hasResources || !hasTestSources) {
result.deps.put(module, generateDeps(m2Repo, module = module, isTest = false, context = this, hasSources = hasSources))
}
val hasTestSources = module.testSources.isNotEmpty()
if (hasTestSources || isTestClasspathModule(module)) {
if (hasTestSources || hasTestResources || isTestClasspathModule(module)) {
result.testDeps.put(module, generateDeps(m2Repo = m2Repo, module = module, hasSources = hasTestSources, isTest = true, context = this))
}
}
@@ -61,12 +61,12 @@ internal fun generateDeps(
val runtimeDeps = mutableListOf<BazelLabel>()
val provided = mutableListOf<BazelLabel>()
if (isTest && module.sources.isNotEmpty()) {
if (hasSources) {
if (isTest) {
if (hasSources && module.sources.isNotEmpty()) {
// associates also is a dependency
associates.add(BazelLabel(":${module.targetName}", module))
}
else {
else if (module.sources.isNotEmpty() || module.resources.isNotEmpty()) {
runtimeDeps.add(BazelLabel(":${module.targetName}", module))
}
}