从JCenter迁移到MavenCentral后无法使用Android库。错误:找不到:未指定:

我刚刚将我的 Android 库从 JCenter 迁移到了 MavenCentral。该过程成功完成,我可以通过Sonatype Repo Search找到我的库。

但是,当我尝试在示例应用程序中使用 lib 时,出现以下错误:

Execution failed for task ':sample:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':sample:debugRuntimeClasspath'.
   > Could not find :unspecified:.
     Required by:
         project :sample > com.techyourchance:threadposter:1.0.0

Possible solution:
 - Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html

看起来 Gradle 找到了我的库(因为如果我更改为不存在的版本,比如 2.0.0,那么我会得到完全不同的错误),但是工件存在一些问题。

所有源代码(包括 lib 和示例应用程序)都可以在这里找到。具体来说,这里是lib 的build.gradle,这是处理发布到 Sonatype的附加 Gradle 脚本。

我已经花了两个小时在 Internet 上搜索上述每个错误消息,但到目前为止无法解决此问题。

回答

在您的 publish-maven.gradle 中跳过名称为“unspecified”的依赖项。

withXml {
    def dependenciesNode = asNode().appendNode('dependencies')

    project.configurations.implementation.allDependencies.each {
        if (it.name != 'unspecified') {
            def dependencyNode = dependenciesNode.appendNode('dependency')
            dependencyNode.appendNode('groupId', it.group)
            dependencyNode.appendNode('artifactId', it.name)
            dependencyNode.appendNode('version', it.version)
        }
    }
}


以上是从JCenter迁移到MavenCentral后无法使用Android库。错误:找不到:未指定:的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>