Gradle 设置 Nexus 用户名密码

直接在 Gradle 中明文写上用户名、密码不仅会涉及安全性问题,更为 Git 的管理带来诸多不便。

有一个变通的方法如下:

新建一个 Gradle 属性文件~/.gradle/gradle.properties,可以把用户名、密码以变量的形式存入文本:

NEXUS_USER=yourname
NEXUS_PASSWORD=yourpassword

接着在 Gradle 文件中即可引用上述变量了:

allprojects {
    repositories {
        //jcenter()
        maven {
            url "http://ip:port/repository/some-central/"
            credentials {
                username = "${NEXUS_USER}"
                password = "${NEXUS_PASSWORD}"
            }
        }
    }
uploadArchives {
    configuration = configurations.archives
    repositories {
        mavenDeployer {
            repository(url: "http://ip:port/repository/some-central/") {
                authentication(userName: NEXUS_USER, password: NEXUS_PASSWORD)
            }
            pom.project {
                version '2.3.0'
                artifactId 'ad'
                groupId 'com.something'
                packaging 'jar'
                description 'A Common Java Library'
            }
        }
    }