gpt4 book ai didi

ant - 使用 gradle 扩展属性时如何获得 ant 行为?

转载 作者:行者123 更新时间:2023-12-02 07:19:17 24 4
gpt4 key购买 nike

我有一个 ant 项目,正在转换为 gradle。在ant项目中,有这样的东西:

<copy todir="dest_dir">
<fileset>
...
</fileset>
<filterchain>
<expandproperties/>
</filterchain>
</copy>

过滤器链扩展诸如 ${property} 之类的属性,但忽略不带大括号的美元符号。我正在尝试在 gradle 中复制此行为。

如果我如下展开,gradle会将文件展开为groovy模板,该模板会尝试用大括号展开美元符号。

copy {
from 'source_dir'
into 'dest_dir'
expand(project.properties)
}

如果我使用 ant ExpandProperties 过滤器类进行过滤,则会收到 NullPointerException。有没有一种简单的方法可以做到这一点,我错过了?

最佳答案

好的,我明白了。 ExpandProperties 过滤器需要使用 Ant 项目设置其项目属性。这就是我将其配置为工作的方式:

copy {
from 'source_dir'
to 'dest_dir'
filter(org.apache.tools.ant.filters.ExpandProperties, project: ant.antProject)
}

这会像 Ant 一样扩展诸如 ${property} 之类的属性,而不会被没有大括号的美元符号绊倒。

关于ant - 使用 gradle 扩展属性时如何获得 ant 行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7276368/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com