项目构建

Gradle Task 入门 4 读取配置文件

2020-07-29  本文已影响0人  这个世界是虚拟的

前置条件

这里的例子继续使用上一篇的类,你可以如果你懒得看上一篇,那就把上一篇的MyTag 类复制一份就可以了

class MyTag {
    String prefix;
    String postfix;

    MyTag(String prefix, String postfix) {
        this.prefix = prefix
        this.postfix = postfix
    }

    @Override
    String toString() {
        return "$prefix--$postfix"
    }
}

定义文件 mytag.properities, 写两个配置

prefix=heng
postfix=ha

定义初始化阶段 + 配置阶段

// 读取并赋值
ext.myTagFile = file('mytag.properies')
ext {
    myNewTag = readMyTag()
}

MyTag readMyTag() {

    logger.quiet("read my tag form file!")

    if (!myTagFile.exists()) {
        throw new GradleException("mytag.properies not found!")
    }

    Properties properties = new Properties()
    myTagFile.withInputStream {
        stream -> properties.load(stream)
    }

    return new MyTag(properties.prefix.toString(), properties.postfix.toString())
}

执行阶段

task loadMyTag {
    println "$project.ext.myNewTag"
}

执行task

//gradlew -q loadMyTag
heng--ha

要注意的地方

这个例子使用了ext 来定义自己的变量, 如果使用project本来提供的变量,那自己调整以下便可,比如project.version

上一篇下一篇

猜你喜欢

热点阅读