目录
  • Gradle 属性( Gradle build environment)
    • gradle 属性可以在如下几个地方设置,按优先级
  • 系统环境变量
    • 系统变量
    • 工程属性
  • 设置 gradle 使用的网络代理

    Gradle 属性( Gradle build environment)

    [详细信息]("https://docs.gradle.org/current/userguide/build_environment.html#sec:gradle_configuration_properties")

    gradle 属性可以在如下几个地方设置,按优先级

    • 在 build 时 使用 -Dxxx.xxx.xxx=value

    • GRADLE_USER_HOME 目录下的 gradle.properties

    • project 根目录下的 gradle.properties 文件中的属性

    • gradle 安装目录下的 gradle.properties 文件中的属性

    下面是可用的 gradle 属性

    • org.gradle.caching=(true,false)

      build 的时是否使用缓存

    • org.gradle.caching.debug=(true,false)

      是否 Log debug 信息

    • org.gradle.configureondemand=(true,false)

      Enables incubating configuration on demand, where Gradle will attempt to configure only necessary projects.

    • org.gradle.console=(auto,plain,rich,verbose)

      console 颜色

    • org.gradle.daemon=(true,false)

      gradle build 进程是否可以利用,默认 true ,可以加速 Build

    • org.gradle.daemon.idletimeout=(# of idle millis)

      Gradle 守护进程将在指定的空闲毫秒数后自行终止。默认值为 10800000(3 小时)。

    • org.gradle.debug=(true,false)

      是否 debug gradle , 这个会给 jvm 运行添加参数 -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005

    • org.gradle.java.home=(path to JDK home)

      指定 jdk 路径

    • org.gradle.jvmargs

      需要添加的 jvm 属性

    • org.gradle.logging.level=(quiet,warn,lifecycle,info,debug)

      gradle log 级别

    系统环境变量

    [详细看这里]('https://docs.gradle.org/current/userguide/build_environment.html#sec:gradle_environment_variables')

    JAVA_HOME

    gradle 需要使用的目录,

    GRADLE_USER_HOME

    Specifies the Gradle user home directory (which defaults to $USER_HOME/.gradle if not set).

    指定一个gradle user home ,如果不指定的话会在 当前系统用户目录下的.gradle文件夹。这个目录会存入不同版本的 gradle,还有gradle的库文件

    GRADLE_OPTS

    指定运行 gradle 时的 jvm 参数

    系统变量

    这时的系统变量指的是 java 中的系统变量, 也包含 -Dxxx.xxx=value 这种变量,这种变量在 java 中是可以通过 System.getProperties 获得的 [明细]

    ("https://docs.gradle.org/current/userguide/build_environment.html#sec:gradle_system_properties")

    这些系统变量最好放在 project 的根目录,否则可能会不起作用

    • gradle.wrapperUser 下载时如果需要身份验证,这个属性设置用户名
    • gradle.wrapperPassword 下载时如果需要身份验证,这个属性设置用户密码
    • gradle.user.home 作用 同 环境变量 GRALE_USER_HOME

    这些变量还可以写成在 gradle.properties 文件中,但当多工程构建时,除了根目录的 ,其他子工程的都会被忽略,格式是这样

    systemProp.gradle.wrapperUser=myuser
    systemProp.gradle.wrapperPassword=mypassword

    工程属性

    只对这个工程起作用

    用户目录下的 属性会优先于工程属性

    在工程的 gradle.propertis 文件中

    # 设置属性 foo 的值为 bar
    org.gradle.project.foo=bar

    也可以通过环境变量还配置

    ORG\_GRADLE\_PROJECT_foo=bar

    意思是设置一个工程变量 “`foo“` 的值为 “`bar“`

    设置 gradle 使用的网络代理

    http

    systemProp.http.proxyHost=www.somehost.org
    systemProp.http.proxyPort=8080
    systemProp.http.proxyUser=userid
    systemProp.http.proxyPassword=password
    systemProp.http.nonProxyHosts=*.nonproxyrepos.com|localhost

    https

    systemProp.https.proxyHost=www.somehost.org
    systemProp.https.proxyPort=8080
    systemProp.https.proxyUser=userid
    systemProp.https.proxyPassword=password
    systemProp.https.nonProxyHosts=*.nonproxyrepos.com|localhost

    以上就是Gradle属性设置及环境变量全面教程的详细内容,更多关于Gradle属性设置环境变量的资料请关注其它相关文章!

    声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。