@@ -79,8 +79,8 @@ public TransitiveDependencyHelper(@NotNull LibraryManager libraryManager, @NotNu
79
79
.artifactId ("libby-maven-resolver" )
80
80
.version ("1.0.1" )
81
81
.checksumFromBase64 ("EmsSUwjtqSeYTt8WEw7LPI/5Yz8bWSxf23XcdLEM7dk=" )
82
- .repository (Repositories .MAVEN_CENTRAL )
83
- .repository ("https://repo.alessiodp.com/releases" )
82
+ .fallbackRepository (Repositories .MAVEN_CENTRAL )
83
+ .fallbackRepository ("https://repo.alessiodp.com/releases" )
84
84
.build ()
85
85
));
86
86
@@ -134,11 +134,12 @@ public Collection<Library> findTransitiveLibraries(@NotNull Library library) {
134
134
135
135
Collection <String > globalRepositories = libraryManager .getRepositories ();
136
136
Collection <String > libraryRepositories = library .getRepositories ();
137
- if (globalRepositories .isEmpty () && libraryRepositories .isEmpty ()) {
137
+ Collection <String > libraryFallbackRepositories = library .getFallbackRepositories ();
138
+ if (globalRepositories .isEmpty () && libraryRepositories .isEmpty () && libraryFallbackRepositories .isEmpty ()) {
138
139
throw new IllegalArgumentException ("No repositories have been added before resolving transitive dependencies" );
139
140
}
140
141
141
- Stream <String > repositories = Stream . of ( globalRepositories , libraryRepositories ). flatMap ( Collection :: stream );
142
+ Stream <String > repositories = libraryManager . resolveRepositories ( library ). stream ( );
142
143
try {
143
144
Collection <?> resolvedArtifacts = (Collection <?>) resolveTransitiveDependenciesMethod .invoke (transitiveDependencyCollectorObject ,
144
145
library .getGroupId (),
@@ -186,7 +187,7 @@ public Collection<Library> findTransitiveLibraries(@NotNull Library library) {
186
187
// TODO Uncomment the line below once LibraryManager#resolveLibrary stops resolving snapshots
187
188
// for every repository before trying direct URLs
188
189
// Make sure the repository is added as fallback if the dependency isn't found at the constructed URL
189
- // libraryBuilder.repository (repository);
190
+ // libraryBuilder.fallbackRepository (repository);
190
191
191
192
// For snapshots, getVersion() returns version-timestamp-buildNumber instead of version-SNAPSHOT
192
193
String version = (String ) artifactGetVersionMethod .invoke (artifact );
@@ -197,6 +198,7 @@ public Collection<Library> findTransitiveLibraries(@NotNull Library library) {
197
198
libraryBuilder .url (repository + path );
198
199
} else {
199
200
library .getRepositories ().forEach (libraryBuilder ::repository );
201
+ library .getFallbackRepositories ().forEach (libraryBuilder ::fallbackRepository );
200
202
}
201
203
202
204
transitiveLibraries .add (libraryBuilder .build ());
0 commit comments