8

当社の nexus リポジトリを使用するように gradle ビルドを構成しましたが、maven が正しく認証できないようです - 次のようなエラーが発生し続けます

Failed to get resource: HEAD. [HTTP HTTP/1.1 401 Authorization Required:    https://maven.gooddata.com/nexus/content/repositories/gooddata/org/codehaus/groovy/groovy-all/2.0.4/groovy-all-2.0.4.pom]

奇妙なことに、同じ nexus リポジトリへのデプロイ (mavenDeployer 経由) はシームレスに機能しています。

以下は、maven リポジトリ構成に関連するビルド スクリプトの一部です (maven_user と maven_password は ~/.gradle/gradle.properties で定義されています)。

apply plugin: 'maven'

ext {
    repos = [
            my : "<my_repo_url>",
            my_snapshot : "<my_snapshots_repo_url>"
    ]

}


repositories {
    mavenLocal()

    maven {
        url repos.my
        credentials {
            username = maven_user
            password = maven_password
        }
    }
    maven {
        url repos.my_snapshot
        credentials {
            userName = maven_user
            password = maven_password
        }
    }

    mavenCentral()
    maven { url "http://repository.codehaus.org/" }
    maven { url "http://sardine.googlecode.com/svn/maven" }
    maven { url "http://snapshots.repository.codehaus.org" }

}


uploadArchives {
    repositories.mavenDeployer {
        repository(url : repos.my) {
            authentication(userName : maven_user, password : maven_password)
        }
        snapshotRepository(url : repos.my_snapshot) {
            authentication(userName : maven_user, password : maven_password)
        }
    }
}

何が起こっているのですか?

4

2 に答える 2

20

ユーザー名プロパティの大文字が間違っているため、ユーザー名とパスワードの設定で「=」記号を除外する必要があります。リポジトリ定義を次のように変更すると、問題が解決するはずです。

maven {
    url repos.my
    credentials {
        username maven_user
        password maven_password
    }
}
于 2012-12-19T12:31:25.203 に答える