Skip to content

Commit c149d94

Browse files
committed
Improve detection if module refers to local project
1 parent c1e6e7a commit c149d94

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

src/main/java/de/jjohannes/gradle/moduledependencies/JavaModuleDependenciesPlugin.java

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@
2020
import java.io.File;
2121
import java.util.HashMap;
2222
import java.util.Map;
23+
import java.util.Set;
24+
import java.util.stream.Collectors;
2325

2426
import static de.jjohannes.gradle.moduledependencies.JavaModuleDependenciesExtension.JAVA_MODULE_DEPENDENCIES;
2527
import static org.gradle.api.plugins.HelpTasksPlugin.HELP_GROUP;
@@ -101,19 +103,21 @@ private void declareDependency(String moduleName, @Nullable String ownModuleName
101103
return;
102104
}
103105

106+
Set<String> allProjectNames = project.getRootProject().getSubprojects().stream().map(Project::getName).collect(Collectors.toSet());
107+
104108
Map<String, Object> gav = javaModuleDependencies.gav(moduleName);
105109
String projectName = ownModuleNamesPrefix == null ? null : moduleName.startsWith(ownModuleNamesPrefix + ".") ? moduleName.substring(ownModuleNamesPrefix.length() + 1) : null;
106110

107-
if (!gav.isEmpty()) {
108-
project.getDependencies().add(configuration.getName(), gav);
109-
if (!gav.containsKey(GAV.VERSION)) {
110-
warnVersionMissing(moduleName, gav, moduleInfoFile, project, javaModuleDependencies);
111-
}
112-
} else if (projectName != null) {
111+
if (projectName != null && allProjectNames.contains(projectName)) {
113112
project.getDependencies().add(
114113
configuration.getName(),
115114
project.project(":" + projectName)
116115
);
116+
} else if (!gav.isEmpty()) {
117+
project.getDependencies().add(configuration.getName(), gav);
118+
if (!gav.containsKey(GAV.VERSION)) {
119+
warnVersionMissing(moduleName, gav, moduleInfoFile, project, javaModuleDependencies);
120+
}
117121
} else {
118122
throw new RuntimeException("No mapping registered for module: " + moduleDebugInfo(moduleName, moduleInfoFile, project.getRootDir()) +
119123
" - use 'javaModuleDependencies.moduleNameToGA.put()' to add mapping.");

0 commit comments

Comments
 (0)