GradleX
GradleX copied to clipboard
doAnalysisSo Variants 问题
因为我的项Gradle版本低于8.1.1,引入远程插件的话会提示版本兼容问题。所以我按照你的代码手写了一份,发布到maven local,但是在项目中引入后sync时在doAnalysisSo报错variants 选择的问题,经过排查问题出在
configuration.forEach {
...
}
请问大佬遇到过此问题吗?是什么原因导致的?如果是插件和项目不兼容的话,在不升级项目Gradle版本的前提下需要从什么地方入手进行处理?
- Unmatched attributes:
- Provides attribute 'artifactType' with value 'android-symbol-with-package-name' but the consumer didn't ask for it
- Provides attribute 'com.android.build.gradle.internal.attributes.VariantAttr' with value 'xxDebug' but the consumer didn't ask for it
- Provides attribute 'default' with value 'xx' but the consumer didn't ask for it
- Provides a library but the consumer didn't ask for it
at org.gradle.api.internal.artifacts.transform.AttributeMatchingVariantSelector.doSelect(AttributeMatchingVariantSelector.java:119)
at org.gradle.api.internal.artifacts.transform.AttributeMatchingVariantSelector.doSelect(AttributeMatchingVariantSelector.java:122)
at org.gradle.api.internal.artifacts.transform.AttributeMatchingVariantSelector.select(AttributeMatchingVariantSelector.java:93)
at org.gradle.api.internal.artifacts.ivyservice.resolveengine.artifact.DefaultArtifactSet.select(DefaultArtifactSet.java:86)
at org.gradle.api.internal.artifacts.ivyservice.resolveengine.artifact.DefaultVisitedArtifactResults.select(DefaultVisitedArtifactResults.java:57)
at org.gradle.api.internal.artifacts.ivyservice.resolveengine.artifact.DefaultVisitedArtifactResults.selectLenient(DefaultVisitedArtifactResults.java:76)
at org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration.select(DefaultLenientConfiguration.java:129)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationFileCollection.getSelectedArtifacts(DefaultConfiguration.java:1516)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationFileCollection.visitContents(DefaultConfiguration.java:1503)
at org.gradle.api.internal.file.AbstractFileCollection.getFiles(AbstractFileCollection.java:129)
at org.gradle.api.internal.file.AbstractFileCollection.iterator(AbstractFileCollection.java:175)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.iterator(DefaultConfiguration.java:506)
at com.example.qhrplugin.base.GradleXPlugin.doAnalysisSo$lambda-5(GradleXPlugin.kt:117) // 此行报错
at org.gradle.configuration.internal.DefaultUserCodeApplicationContext$CurrentApplication$1.execute(DefaultUserCodeApplicationContext.java:123)
at org.gradle.api.internal.DefaultCollectionCallbackActionDecorator$BuildOperationEmittingAction$1.run(DefaultCollectionCallbackActionDecorator.java:110)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:47)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:68)
at org.gradle.api.internal.DefaultCollectionCallbackActionDecorator$BuildOperationEmittingAction.execute(DefaultCollectionCallbackActionDecorator.java:107)
at org.gradle.api.internal.DefaultDomainObjectCollection.all(DefaultDomainObjectCollection.java:161)
at com.example.qhrplugin.base.GradleXPlugin.doAnalysisSo(GradleXPlugin.kt:113)
at com.example.qhrplugin.base.GradleXPlugin.apply$lambda-0(GradleXPlugin.kt:45)```
有明确提示到代码行数的话,建议贴下代码,以及项目环境。 有限的信息推测是API兼容问题,搜一下对应版本的API,或者尝试通过variants.getVarintData().getxxx解决。 本质是通过GAV获取文件,然后解析。
因为我的项Gradle版本低于8.1.1,引入远程插件的话会提示版本兼容问题。所以我按照你的代码手写了一份,发布到maven local,但是在项目中引入后sync时在doAnalysisSo报错variants 选择的问题,经过排查问题出在
configuration.forEach { ... }请问大佬遇到过此问题吗?是什么原因导致的?如果是插件和项目不兼容的话,在不升级项目Gradle版本的前提下需要从什么地方入手进行处理?
- Unmatched attributes: - Provides attribute 'artifactType' with value 'android-symbol-with-package-name' but the consumer didn't ask for it - Provides attribute 'com.android.build.gradle.internal.attributes.VariantAttr' with value 'xxDebug' but the consumer didn't ask for it - Provides attribute 'default' with value 'xx' but the consumer didn't ask for it - Provides a library but the consumer didn't ask for it at org.gradle.api.internal.artifacts.transform.AttributeMatchingVariantSelector.doSelect(AttributeMatchingVariantSelector.java:119) at org.gradle.api.internal.artifacts.transform.AttributeMatchingVariantSelector.doSelect(AttributeMatchingVariantSelector.java:122) at org.gradle.api.internal.artifacts.transform.AttributeMatchingVariantSelector.select(AttributeMatchingVariantSelector.java:93) at org.gradle.api.internal.artifacts.ivyservice.resolveengine.artifact.DefaultArtifactSet.select(DefaultArtifactSet.java:86) at org.gradle.api.internal.artifacts.ivyservice.resolveengine.artifact.DefaultVisitedArtifactResults.select(DefaultVisitedArtifactResults.java:57) at org.gradle.api.internal.artifacts.ivyservice.resolveengine.artifact.DefaultVisitedArtifactResults.selectLenient(DefaultVisitedArtifactResults.java:76) at org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration.select(DefaultLenientConfiguration.java:129) at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationFileCollection.getSelectedArtifacts(DefaultConfiguration.java:1516) at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationFileCollection.visitContents(DefaultConfiguration.java:1503) at org.gradle.api.internal.file.AbstractFileCollection.getFiles(AbstractFileCollection.java:129) at org.gradle.api.internal.file.AbstractFileCollection.iterator(AbstractFileCollection.java:175) at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.iterator(DefaultConfiguration.java:506) at com.example.qhrplugin.base.GradleXPlugin.doAnalysisSo$lambda-5(GradleXPlugin.kt:117) // 此行报错 at org.gradle.configuration.internal.DefaultUserCodeApplicationContext$CurrentApplication$1.execute(DefaultUserCodeApplicationContext.java:123) at org.gradle.api.internal.DefaultCollectionCallbackActionDecorator$BuildOperationEmittingAction$1.run(DefaultCollectionCallbackActionDecorator.java:110) at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29) at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26) at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66) at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59) at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157) at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59) at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:47) at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:68) at org.gradle.api.internal.DefaultCollectionCallbackActionDecorator$BuildOperationEmittingAction.execute(DefaultCollectionCallbackActionDecorator.java:107) at org.gradle.api.internal.DefaultDomainObjectCollection.all(DefaultDomainObjectCollection.java:161) at com.example.qhrplugin.base.GradleXPlugin.doAnalysisSo(GradleXPlugin.kt:113) at com.example.qhrplugin.base.GradleXPlugin.apply$lambda-0(GradleXPlugin.kt:45)```
遇到相同问题,请问有什么解决方案吗