gradle - 具有 Gradle 属性的 Travis CI 环境变量

标签 gradle android-gradle-plugin travis-ci sonatype

如何使用 travis-ci 环境变量作为 Gradle 的属性?

我本地的 gradle.properties 位于 gradle 路径下,其中包含:

sonatypeRepo = abcd

它在我的build.gradle中使用:

uploadArchives {   
    //more     
    repository(url: sonatypeRepo) {
        // more
    }
    //more
}

当然在本地它是有效的。在 travis 中,我在设置下添加了变量,以便我看到构建日志:

Setting environment variables from repository settings
$ export sonatypeRepo=[secure]

它失败了:

FAILURE: Build failed with an exception.
* Where:
Build file '/home/travis/build/Diolor/Swipecards/library/build.gradle' line: 49
* What went wrong:
A problem occurred evaluating project ':library'.
> No such property: sonatypeRepo for class: org.gradle.api.publication.maven.internal.ant.DefaultGroovyMavenDeployer
<小时/>

如何使用 Travis 的环境变量作为 Grable 属性也可以使用本地构建?

最佳答案

我也是偶然发现了这个。

这就是我让它工作的方法:

在我的 build.gradle 中

def uzer = hasProperty('blahUser') ? blahUser : System.getenv('blahUser')
def creds = hasProperty('blahPwd') ? blahPwd : System.getenv('blahPwd')

在我的 $HOME/.gradle/gradle.properties

blahUser=batman
blahPwd=eatsworms

所以我需要这个 travis-ci ——我认为它没有 $HOME/.gradle/gradle.properties 的概念,但是你可以将环境变量添加到 .travis.yml 中。

基本上,如前所述,如果该属性“存在”; gradle 使用它,否则向环境询问它。在我的例子中,需要“hasProperty()”检查,这样 travis 就不会生成未找到属性的异常......

第...

关于gradle - 具有 Gradle 属性的 Travis CI 环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26023884/

相关文章:

java - 在 TravisCI 上测试

android - 无法配置 travis 以在 android 项目上工作

android - 在gradle中访问依赖模块的依赖模块的类

java - 是否可以仅针对特定风格包含并初始化 HockeyApp SDK?

android - Fabric Beta 和 APK 拆分

android - 程序类型已经存在 : com. google.protobuf.AbstractMessageLite$Builder$LimitedInputStream

protractor - BrowserStack + Protractor + TravisCi和安全的localhost服务器-配置

c++ - 在 gradle 中配置 cpp 源

java - 如何将基于 Gradle 的 Android Studio 项目移植到 Eclipse?

Android Studio 3.0.1 错误 : Gradle project sync failed. 基本功能(例如编辑、调试)将无法正常工作