首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用kotlinscript DSL (build.gradle.kts)通过url添加maven存储库

如何使用kotlinscript DSL (build.gradle.kts)通过url添加maven存储库
EN

Stack Overflow用户
提问于 2018-01-14 01:31:02
回答 4查看 23.9K关注 0票数 78

build.gradle.kts版本中的build.gradle中的以下代码片段的等价物是什么?

代码语言:javascript
复制
repositories {
  mavenCentral()
  maven {
    url '<MAVEN REPO URL>'
  }
}
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-01-14 03:25:55

作为对其他答案的补充,在#kotlin-dsl/256中,快捷方式方法被添加到各种存储库方法中,以执行类似以下操作:

代码语言:javascript
复制
repositories {
  mavenCentral()
  maven(url = "<MAVEN REPO URL>")
}

根据这个问题,这是在Kotlin DSL版本的0.11.1中添加的。Gradle 4.2 release中包含了0.11.x版本。

要在使用Gradle wrapper时查看您的构建所运行的Gradle版本,请运行./gradlew --version

票数 131
EN

Stack Overflow用户

发布于 2018-01-14 01:31:02

在2018-01-13,正确的语法如下(函数setUrl,而不是url ):

代码语言:javascript
复制
repositories {
    mavenCentral()
    maven {
        setUrl("<MAVEN REPO URL>")
    }
}
票数 26
EN

Stack Overflow用户

发布于 2020-04-21 16:49:57

official doco允许您在Groovy和Kotlin DSL之间切换示例。目前,这里列出的问题的答案是:

代码语言:javascript
复制
repositories {
    mavenCentral()
    maven {
        url = uri("<MAVEN REPO URL>")
    }
}

我需要添加带身份验证的Gitlab,它有一个更复杂的语法。对于其他偶然发现这一点的人,这里是翻译成kts/Kotlin语法的官方Gitlab示例。

代码语言:javascript
复制
val gitLabPrivateToken: String by project

maven {
    url = uri("https://<gitlab-url>/api/v4/groups/<group>/-/packages/maven")
    name = "GitLab"
    credentials(HttpHeaderCredentials::class) {
        name = "Private-Token"
        value = gitLabPrivateToken
    }
    authentication {
        create<HttpHeaderAuthentication>("header")
    }
}

这里的示例URL对于Gitlab doco是真的。但对我来说,它只适用于这样的网址:https://gitlab.com/api/v4/projects/12345/packages/maven

票数 24
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48242437

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档