为什么我得到“没有这样的文件或目录”错误

时间:2015-01-14 16:12:58

标签: groovy gradle android-gradle build.gradle

我是Gradle的新手。我试图阅读现有的文件'内容与将其内容写入文件系统中尚不存在的新文件。

File existingFile1 = new File(path1);
File existingFile2 = new File(path2);
File newFile = new File(path3);

newFile.withWriter{ w ->
    [existingFile1, existingFile2].each{ f ->
      new File(f).withReader { r ->
         w << r << '\n'
      }
}

但是,我的gradle抱怨没有这样的文件或目录 path3。为什么抱怨路径3?我的意思是当然还没有存在path3的文件,我正在编写代码来创建这个文件。任何人都可以向我解释为什么我的抱怨会抱怨它?

我正在Android studio&amp; amp;中编写我的gradle构建脚本我正在使用Gradle V2.2.1

1 个答案:

答案 0 :(得分:4)

您还必须创建文件最终的路径。如果父目录尚未存在,则您的创建将失败。 e.g:

f = new File('/tmp/it/aint/there')
assert !f.exists()
assert !f.parentFile.exists()
f.parentFile.mkdirs() // XXX create the dirs "to the file"
assert f.parentFile.exists()
f.withWriter{ it << 'x' }
assert f.exists()
assert f.text=='x'