Gradle:获取执行“gradle”的文件夹

时间:2013-05-24 06:58:26

标签: gradle

我正在尝试使用gradle任务作为“OS不可知的shell脚本”。我在编写构建文件的逻辑时没有问题,但我希望能够从任何文件夹中运行它。

我的第一次尝试是在路径上放置一个带有build.gradle文件的文件夹,然后尝试执行:

gradle myMask

来自不包含build.gradle的文件夹 - 但这不起作用。

我的下一次尝试是:

gradle -b /folder/containing/build.gradle myTask

但这只是在某种程度上有效。在我的任务中,我想找到CURRENT DIRECTORY中的所有文件。 current - 意思不是包含build.gradle的那个,而是我正在执行的那个“gradle .....”

我试过了:

file(".")

file("$projectDir")

还有一些,但所有这些都指向包含构建脚本的文件夹,没有来自的文件夹 我正在执行它。

任何想法我该怎么做?

2 个答案:

答案 0 :(得分:51)

获胜者是:

System.getProperty("user.dir")

答案 1 :(得分:13)

file(“。”)始终返回当前项目文件夹,而不是工作目录。要参考工作目录,您可以使用:

new File(".").absolutePath
希望有所帮助!