Gradle抱怨“没有这样的文件或目录”

时间:2015-01-14 16:48:21

标签: groovy gradle android-gradle build.gradle

我正在使用Android Studio& Gradle构建脚本。

在我的Android项目的根目录下,有一个名为'other'的文件夹,在'other'文件夹中,有一个属性文件 my.properties

-MyApp/
     …
    -other/
         -my.properties  
    -build.gradle

在我的 build.gradle 中,我尝试访问my.properties:

task accessMyProperties {
    def folderName = 'other';

    //Gradle complains this line
    def file = new File("$folderName/my.properties");
    ...
}

但格拉德抱怨说:

* What went wrong:
A problem occurred evaluating project ':MyApp'.
> other/my.properties (No such file or directory)

为什么gradle出现上述错误?如何摆脱它?

1 个答案:

答案 0 :(得分:6)

在Gradle构建脚本中使用纯相对路径时要小心;那些在调用构建时依赖于工作目录,这不是你应该依赖的东西。最好根据$projectDir$rootDir建立路径。尝试这样的事情:

def file = new File("$projectDir/$folderName/my.properties");

请参阅http://www.gradle.org/docs/current/dsl/org.gradle.api.Project.html以获取可以使用的变量列表。