【问题标题】:Gradle is unable to locate the bintray repository for kotlinx-serializationGradle 无法找到用于 kotlinx 序列化的 bintray 存储库
【发布时间】:2020-04-08 03:57:09
【问题描述】:

我正在尝试使用kotlinx.serialization 并且只是运气没有。这是build.gradle的相关部分

buildscript {
    ext.kotlin_version = '1.3.71'

    repositories {
        mavenCentral()
        google()
        jcenter()
        maven("https://kotlin.bintray.com/kotlinx")
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
    }
}

这会死在葡萄藤上:

Could not find method maven() for arguments [https://kotlin.bintray.com/kotlinx] 
on repository container of type org.gradle.api.internal.artifacts.dsl.DefaultRepositoryHandler

合并kotlinx-serialization 的最新方法是什么?

【问题讨论】:

  • kotlinx.serialization 的实际版本看起来是 1.3.70,而不是 1.3.71 至少它们的 master 分支依赖于 1.3.70 的 kotlin 组件
  • @user3159253 请将其添加为答案:它已修复。

标签: gradle kotlin kotlinx.serialization


【解决方案1】:

看起来 kotlinx.serialization 的实际版本是 1.3.70,而不是 1.3.71 至少它们的 master 分支依赖于 1.3.70 kotlin 组件

【讨论】:

    【解决方案2】:

    org.gradle.api.internal.artifacts.dsl.DefaultRepositoryHandler中maven方法的参数是Closure,上下文对象是org.gradle.api.artifacts.repositories.MavenArtifactRepository类型,所以正确的脚本应该是这样的

    repositories {
       mavenCentral()
       maven {
        url="https://kotlin.bintray.com/kotlinx"
      }
    

    } 更重要的是,kotlinx.serialization 存在于 mavencentral 中,因此无需添加您的自定义 maven 存储库

    【讨论】:

    • bintray url 被添加为众多尝试中的一种。
    • 我猜他/她使用的是 build.gradle.kts,而不是 build.gradle。我在完全有效的项目中有类似的结构
    • @user3159253 你的 gradle 版本是什么
    • 您的积分有效(我赞成)。原来kotlinx 版本落后了一个次要-次要刻度,@user3159253 发现:我让他创建一个答案。
    • kotlin 你会明白我从哪里来的。 for comprehensions 解决了 20% 的馆藏处理问题。剩下的就交给我们自己的设备了。哦,甚至不要让我开始了解多线程。
    猜你喜欢
    • 2017-12-26
    • 2016-12-10
    • 1970-01-01
    • 2021-01-20
    • 2013-12-06
    • 1970-01-01
    • 2021-12-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多