将setting.xml中的Maven凭据与Gradle一起使用

将setting.xml中的Maven凭据与Gradle一起使用,maven,gradle,dependencies,continuous-integration,artifactory,Maven,Gradle,Dependencies,Continuous Integration,Artifactory,我有一些Gradle项目,但我希望避免在build.Gradle文件中显式加载凭据。 我想避免的一个例子是: maven { credentials { username "$maven_user" password "$maven_password" } url 'https://my-maven-repo' } 我希望避免在

我有一些Gradle项目,但我希望避免在
build.Gradle
文件中显式加载凭据。 我想避免的一个例子是:

        maven {
            credentials {
                username "$maven_user"
                password "$maven_password"
            }
            url 'https://my-maven-repo'
        }
我希望避免在
gradle.build
中包含用户名和密码字段,即使这些值可以从本地主机加载,例如从
~/.gradle/gradle.properties

我想要实现的是从
~/.m2/settings.xml
加载凭据,并在
gradle.build
中仅指定maven存储库url。
有可能吗?我做了几次尝试,但Gradle似乎忽略了
settings.xml中的凭据

这样设置:

新方式:

plugins {
    id 'net.linguica.maven-settings' version '0.5'
}
旧方法(Gradle 2.0或更早版本):

然后只需声明您的存储库:

repositories {
    maven {
        name 'your-repo'
        url 'http://.....'
    }
}
假设在
~/.m2/settings.xml
中有如下内容:

<servers>
    <server>
        <id>your-repo</id>
        <username>user</username>
        <password>pass</password>
    </server>
</servers>

你的回购协议
用户
通过

使用Kotlin dsl时的语法是什么
maven(url=“url”,name=“repo”)
不起作用。``导入java.net.URI插件{id(“net.linguica.maven设置”)版本“0.5”}存储库{maven{name=“repo”url=URI(“https://”)}```
<servers>
    <server>
        <id>your-repo</id>
        <username>user</username>
        <password>pass</password>
    </server>
</servers>