当前位置:  开发笔记 > Android > 正文

在Gradle构建脚本中使用变量

如何解决《在Gradle构建脚本中使用变量》经验,为你挑选了2个好方法。

我在我的项目中使用Gradle.我有一个任务是用我的战争做一些额外的配置.我需要构建一个在我的任务中使用的字符串,比如说,我有:

task extraStuff{
    doStuff 'org.springframework:spring-web:3.0.6.RELEASE@war'
}

这很好用.我需要做的是定义版本(实际上已经在属性文件中定义)并在任务中使用它,如:

springVersion=3.0.6.RELEASE

task extraStuff{
    doStuff 'org.springframework:spring-web:${springVersion}@war'
}

我的问题是spring版本不被识别为变量.那我怎么能把它传递到字符串里呢?



1> hzitoun..:

如果您正在使用Gradle开发Android应用程序,要声明变量(即保留一些依赖项版本),您应该使用如下关键字:def

def version = '1.2'

dependencies {
  compile "groupId:artifactId:${version}"
}



2> Giuseppe Ric..:

我认为问题可能出在字符串文字分隔符上:

    字符串文字的定义完全如下所示,groovy将其用单引号或双引号括起来(例如"3.0.6.RELEASE");

    Gstrings如果我没记错的话,不会在单引号字符串中解析(单引号'...'或三引号'''...''');

所以代码将是:

springVersion = '3.0.6.RELEASE' //or with double quotes "..."

task extraStuff{
    doStuff "org.springframework:spring-web:${springVersion}@war"
}

推荐阅读
落单鸟人
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有