我试图使用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")
还有一些,但所有这些都指向包含构建脚本的文件夹,而不是我正在执行它的那个.
任何想法我该怎么做?
最终获胜者是:
System.getProperty("user.dir")
file(".")总是返回当前项目文件夹,而不是工作目录.要参考工作目录,您可以使用:
new File(".").absolutePath
希望有所帮助!
勒内