如何在gradle中更改ReplaceTokens过滤器的令牌格式?

问题描述 投票:0回答:2

我有一个bash格式的文件中的标记,看起来像这样:

PASSWORD=$PASSWORD

如何更改ReplaceTokens过滤器以使其尊重bash格式?

copy{ 
  into something
  from somethingelse
  filter(ReplaceTokens, tokens: [PASSWORD:'123456'])  
}
gradle
2个回答
0
投票

解决方案是使用复制任务的expand属性:

https://docs.gradle.org/3.4/dsl/org.gradle.api.tasks.Copy.html#org.gradle.api.tasks.Copy:expand(java.util.Map)

task copyProductionConfig(type: Copy) {
  from 'source'
  include 'config.properties'
  into 'build/war/WEB-INF/config'
  expand([
    databaseHostname: 'db.company.com',
    version: versionId,
    buildNumber: (int)(Math.random() * 1000),
    date: new Date()
  ])
}

0
投票

ReplaceTokens支持开始和结束标记,因此您可以这样做:

    filter( ReplaceTokens,
        beginToken : '$',
        endToken : '',
        tokens: [PASSWORD:'123456']
    )
© www.soinside.com 2019 - 2024. All rights reserved.