28
28
public abstract class JavaModuleDependenciesPlugin implements Plugin <Project > {
29
29
30
30
private final Map <File , ModuleInfo > moduleInfo = new HashMap <>();
31
- private boolean catalogFound = true ;
31
+ private VersionCatalogsExtension versionCatalogs = null ;
32
+ private boolean catalogNotFoundWarningPrinted = false ;
32
33
33
34
@ Override
34
35
public void apply (Project project ) {
@@ -37,8 +38,11 @@ public void apply(Project project) {
37
38
}
38
39
39
40
project .getPlugins ().apply (JavaPlugin .class );
41
+
42
+ versionCatalogs = project .getExtensions ().findByType (VersionCatalogsExtension .class );
43
+
40
44
JavaModuleDependenciesExtension javaModuleDependenciesExtension = project .getExtensions ().create (
41
- JAVA_MODULE_DEPENDENCIES , JavaModuleDependenciesExtension .class );
45
+ JAVA_MODULE_DEPENDENCIES , JavaModuleDependenciesExtension .class , versionCatalogs );
42
46
javaModuleDependenciesExtension .getOwnModuleNamesPrefix ().convention (
43
47
project .provider (() -> project .getGroup ().toString ()));
44
48
javaModuleDependenciesExtension .getWarnForMissingVersions ().convention (true );
@@ -110,10 +114,9 @@ private Map<String, Object> toGAV(String moduleName, String ga, Project project,
110
114
Map <String , Object > gav = new HashMap <>();
111
115
112
116
VersionConstraint version = null ;
113
- VersionCatalogsExtension versionCatalogs = project .getExtensions ().findByType (VersionCatalogsExtension .class );
114
117
if (versionCatalogs == null ) {
115
118
warnVersionMissing (project .getLogger (), javaModuleDependenciesExtension , "Version catalog feature not enabled in settings.gradle(.kts) - add 'enableFeaturePreview(\" VERSION_CATALOGS\" )'" );
116
- catalogFound = false ;
119
+ catalogNotFoundWarningPrinted = true ;
117
120
} else {
118
121
String catalogName = javaModuleDependenciesExtension .getVersionCatalogName ().forUseAtConfigurationTime ().get ();
119
122
VersionCatalog catalog = versionCatalogs .named (catalogName );
@@ -134,7 +137,7 @@ private Map<String, Object> toGAV(String moduleName, String ga, Project project,
134
137
}
135
138
136
139
private void warnVersionMissing (Logger logger , JavaModuleDependenciesExtension javaModuleDependenciesExtension , String message ) {
137
- if (catalogFound && javaModuleDependenciesExtension .getWarnForMissingVersions ().forUseAtConfigurationTime ().get ()) {
140
+ if (! catalogNotFoundWarningPrinted && javaModuleDependenciesExtension .getWarnForMissingVersions ().forUseAtConfigurationTime ().get ()) {
138
141
logger .warn ("[WARN] [Java Module Dependencies] " + message );
139
142
}
140
143
}
0 commit comments