2012-10-22 44 views
6

我的项目包含一些需要解压缩到项目根目录的tar.gz文件。使用Gradle将tar.gz解压缩到根目录中

我做了这是一个测试:

task untar (type: Copy) { 
    from tarTree(resources.gzip('model.tar.gz')) 
    into getProjectDir() 
} 

当我运行它时,它抛出这个异常:org.gradle.api.UncheckedIOException:java.io.IOException异常:该进程无法访问,因为另一个文件进程已锁定文件的一部分。

我在Windows 7中使用Gradle 1.1。

感谢您的帮助。

+0

请提供您正在使用的Gradle版本。 –

+0

对不起,我忘了。我会更新这个问题。 – user1294431

+0

当你运行这个任务,你确定没有其他进程有文件的句柄? –

回答

10

我能够以此来解压:

task test << { 
    copy { 
     from tarTree(resources.gzip('model.tar.gz')) 
     into getProjectDir() 
    } 
} 

我唯一的猜测是,无论是目录或文件TGZ或两者在配置阶段被锁定,它是在执行阶段释放。

如果有人有使用复制任务而不是复制方法的解决方案,我将不胜感激。

相关问题