5353import org .gradle .internal .component .external .model .ModuleDependencyMetadata ;
5454import org .gradle .internal .component .external .model .MutableModuleComponentResolveMetadata ;
5555import org .gradle .internal .component .model .ComponentArtifactMetadata ;
56+ import org .gradle .internal .component .model .ComponentArtifactResolveMetadata ;
5657import org .gradle .internal .component .model .ComponentOverrideMetadata ;
5758import org .gradle .internal .component .model .ComponentResolveMetadata ;
5859import org .gradle .internal .component .model .ModuleSources ;
@@ -160,6 +161,7 @@ public String getDisplayName() {
160161 }
161162
162163 @ Override
164+ @ SuppressWarnings ({"rawtypes" , "unchecked" })
163165 public ConfiguredModuleComponentRepository createResolver () {
164166 MavenResolver resolver = (MavenResolver )local .createResolver ();
165167
@@ -176,7 +178,6 @@ public ConfiguredModuleComponentRepository createResolver() {
176178 ReflectionUtils .alter (resolver , "cachingResourceAccessor.this$0.repository" , prev -> repo );
177179 ReflectionUtils .alter (resolver , "cachingResourceAccessor.delegate.delegate" , prev -> repo );
178180
179- //noinspection unchecked,rawtypes
180181 return new ConfiguredModuleComponentRepository () {
181182 private final ModuleComponentRepositoryAccess local = wrap (resolver .getLocalAccess ());
182183 private final ModuleComponentRepositoryAccess remote = wrap (resolver .getRemoteAccess ());
@@ -197,11 +198,9 @@ public Instantiator getComponentMetadataInstantiator() {
197198 }
198199
199200 private ModuleComponentRepositoryAccess wrap (ModuleComponentRepositoryAccess delegate ) {
200- //noinspection rawtypes
201201 return new ModuleComponentRepositoryAccess () {
202202 @ Override
203203 public void resolveComponentMetaData (ModuleComponentIdentifier moduleComponentIdentifier , ComponentOverrideMetadata requestMetaData , BuildableModuleComponentMetaDataResolveResult result ) {
204- //noinspection unchecked
205204 delegate .resolveComponentMetaData (moduleComponentIdentifier , requestMetaData , result );
206205 if (result .getState () == BuildableModuleComponentMetaDataResolveResult .State .Resolved ) {
207206 ModuleComponentResolveMetadata meta = getMetadata (result );
@@ -222,14 +221,12 @@ private void setResultResolved(BuildableModuleComponentMetaDataResolveResult res
222221 }
223222 }
224223
225- @ SuppressWarnings ("unchecked" )
226224 private void setResultResolvedGradle8_2Above (BuildableModuleComponentMetaDataResolveResult result , ModuleComponentResolveMetadata meta ) {
227225 result .resolved (meta );
228226 }
229227
230228 // DO NOT TOUCH
231229 // This method is modified by ASM in build.gradle
232- @ SuppressWarnings ("unchecked" )
233230 private void setResultResolvedGradle8_1Below (BuildableModuleComponentMetaDataResolveResult result , ModuleComponentResolveMetadata meta ) {
234231 // Descriptor of resolved is changed to (Lorg/gradle/internal/component/external/model/ModuleComponentResolveMetadata;)V
235232 result .resolved (meta );
@@ -264,6 +261,15 @@ public void resolveArtifactsWithType(ComponentResolveMetadata component, Artifac
264261 delegate .resolveArtifactsWithType (component , artifactType , result );
265262 }
266263
264+ // DO NOT TOUCH
265+ // Gradle 8.9 changed the first argument from ComponentResolveMetadata to ComponentArtifactResolveMetadata
266+ // https://github.com/gradle/gradle/commit/90f772b5d4b5599653d435e9f10d364a5599608d
267+ @ SuppressWarnings ("unused" )
268+ public void resolveArtifactsWithType (ComponentArtifactResolveMetadata component , ArtifactType artifactType , BuildableArtifactSetResolveResult result ) {
269+ //ASM In build.gradle changes the first parameter and method descriptor
270+ delegate .resolveArtifactsWithType (null /*component*/ , artifactType , result );
271+ }
272+
267273 @ Override
268274 public void resolveArtifact (ComponentArtifactMetadata componentArtifactMetadata , ModuleSources moduleSources , BuildableArtifactFileResolveResult buildableArtifactFileResolveResult ) {
269275 delegate .resolveArtifact (componentArtifactMetadata , moduleSources , buildableArtifactFileResolveResult );
0 commit comments