|
20 | 20 | import java.io.File; |
21 | 21 | import java.util.HashMap; |
22 | 22 | import java.util.Map; |
| 23 | +import java.util.Set; |
| 24 | +import java.util.stream.Collectors; |
23 | 25 |
|
24 | 26 | import static de.jjohannes.gradle.moduledependencies.JavaModuleDependenciesExtension.JAVA_MODULE_DEPENDENCIES; |
25 | 27 | import static org.gradle.api.plugins.HelpTasksPlugin.HELP_GROUP; |
@@ -101,19 +103,21 @@ private void declareDependency(String moduleName, @Nullable String ownModuleName |
101 | 103 | return; |
102 | 104 | } |
103 | 105 |
|
| 106 | + Set<String> allProjectNames = project.getRootProject().getSubprojects().stream().map(Project::getName).collect(Collectors.toSet()); |
| 107 | + |
104 | 108 | Map<String, Object> gav = javaModuleDependencies.gav(moduleName); |
105 | 109 | String projectName = ownModuleNamesPrefix == null ? null : moduleName.startsWith(ownModuleNamesPrefix + ".") ? moduleName.substring(ownModuleNamesPrefix.length() + 1) : null; |
106 | 110 |
|
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)) { |
113 | 112 | project.getDependencies().add( |
114 | 113 | configuration.getName(), |
115 | 114 | project.project(":" + projectName) |
116 | 115 | ); |
| 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 | + } |
117 | 121 | } else { |
118 | 122 | throw new RuntimeException("No mapping registered for module: " + moduleDebugInfo(moduleName, moduleInfoFile, project.getRootDir()) + |
119 | 123 | " - use 'javaModuleDependencies.moduleNameToGA.put()' to add mapping."); |
|
0 commit comments