Gradle 在Android的Gealle构建中,当输出目录不完全相同时,我如何使它考虑一个不是最新的任务?
我在用gradle做一个Android项目 我有一个任务,下载一些文件,将它们放入构建中(作为Android资产) 我想让一个任务从web下载一些文件,并将它们放到一个临时目录中,在构建过程中从那里(通过一个单独的复制任务)将它们复制到资产目录中 如果输出目录以任何方式发生更改(例如,文件更改或丢失、目录丢失、子目录中的文件丢失等),我希望确保downloader任务将重新运行(并且不会被视为最新的)。目前,我将输出目录指定为@OutputDirectory,但它似乎不符合我的要求:Gradle 在Android的Gealle构建中,当输出目录不完全相同时,我如何使它考虑一个不是最新的任务?,gradle,android-gradle-plugin,build.gradle,Gradle,Android Gradle Plugin,Build.gradle,我在用gradle做一个Android项目 我有一个任务,下载一些文件,将它们放入构建中(作为Android资产) 我想让一个任务从web下载一些文件,并将它们放到一个临时目录中,在构建过程中从那里(通过一个单独的复制任务)将它们复制到资产目录中 如果输出目录以任何方式发生更改(例如,文件更改或丢失、目录丢失、子目录中的文件丢失等),我希望确保downloader任务将重新运行(并且不会被视为最新的)。目前,我将输出目录指定为@OutputDirectory,但它似乎不符合我的要求: class
class AssetDownloaderTask extends DefaultTask {
@OutputDirectory
def File outputDir
@Input
def String databaseChecksum
....
例如,如果我从其中一个子目录中删除一个文件,gradle仍然认为该任务是最新的。gradle不是应该存储输出的散列吗
我怎样才能达到我想要的呢?我无论如何都不是一个Gradle专家,但我相信你想用
@InputDirectory
注释来代替
当目录位置或内容发生更改时,这将导致任务被视为过期
编辑:哇,没注意到这东西这么旧。抱歉,如果necroing是不好的SA礼节