无法加载类 'org.gradle.api.publication.maven.internal.MavenPomMetaInfoProvider'。

42
当我在Android Studio中更新gradle时,我发现了这个类型错误:无法加载类“org.gradle.api.publication.maven.internal.MavenPomMetaInfoProvider”。这是一个意外的错误,请提交一个包含idea.log文件的bug。

https://dev59.com/tlEG5IYBdhLWcg3wV63A - Denny Mathew
6个回答

28
在我的情况下,问题出在这一行:
apply plugin: 'com.github.dcendents.android-maven'

之前,我使用的Gradle插件版本是4.2.2,今天将其更新为7.0.0,并且遇到了和你一样的错误。我通过从我的build.gradle中删除这行代码来解决此问题。


12
删除后,我得到了以下结果:在项目[...]上找不到安装(install)方法,参数为[...]。 - mpountou
3
将您的Gradle版本降级至6.7.1。这对我有效。 - Satheesh
如果您在build.gradle中有以下内容,则需要将其删除: id "com.github.dcendents.android-maven" version "2.0" 这是从插件部分中的内容。 - puneet yadav
我根本没有这些行,但像@Alex一样,我升级了gradle插件版本到7.0.1、7.0.2等等,但这个错误仍然存在。我的问题在gradle wrapper版本6.7.1上得到解决,并尝试使用gradle插件版本4.2.2是最终解决方案。@Satheesh,你可以把你的建议发布为答案,我会点赞的。 - Abhinav Saxena
@mpountou,你可能在一个Gradle文件中有一个install { }块,需要在升级到Gradle 7+后将其删除。 - Adam Johns

5

我在使用jitpack.io上推送的库时遇到了这个问题。jitpack.io上的文档提到要在根build.gradle文件中包含此内容。

allprojects {
    repositories {
        ....
        maven { url 'https://jitpack.io' }
    }
}

随着最新的更新,情况已经发生了改变。Android Studio不再在根build.gradle文件中包含所有项目块。

现在,您需要在settings.gradle文件中包含maven { url 'https://jitpack.io' }才能使其工作。

以下是我的settings.gradle的样子:

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven { url "https://jitpack.io" }
    }
}

rootProject.name = "<App Name>"
include ':app'

3

每次我得到赞时都会更新日期,我知道它仍然有效

日期:2021年11月4日

在升级到gradle 7.0.0后收到错误信息后,我尝试了@Alex的解决方案,但对我无效。

我删除了两行代码,现在它可以正常工作了。

apply plugin: 'com.github.dcendents.android-maven'
apply plugin: 'android-maven'

我完全没有这些行,但像@Alex一样,我升级了gradle插件版本到7.0.1、7.0.2等等,但这个错误仍然存在。我的问题在gradle wrapper版本6.7.1上得到解决,并尝试使用gradle插件版本4.2.2是最终解决方案。 - Abhinav Saxena

3

检查其他模块是否具有此插件:

apply plugin: 'com.github.dcendents.android-maven'

在我的情况下,它在countrycodepicker中。

我从那里将其移除后,它就起作用了。


1
我在2023年7月将项目迁移到最新版本时遇到了同样的问题。
我在countrycodepicker中遇到了这个问题。
在文件中:
../../countrycodepicker/build.gradle

在线:
apply plugin: 'com.github.dcendents.android-maven'

解决方案(2023年7月可行):

删除该行后,组件现在正常运行。

apply plugin: 'com.github.dcendents.android-maven'

0

将您的Gradle版本降级至6.7.1。这对我有效。


目前你所回答的内容不够清晰,请编辑并添加更多细节来帮助其他人理解这如何回答问题。你可以在帮助中心找到更多撰写良好答案的信息。 - Community
降级从来都不是一个正确的答案。降级只会导致一无所获。在未来的某个时候,你还是得升级。你会怎么做? - Evgenii Vorobei

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接