给定以下目录结构:
/home/some/random/foler/myScript.grooy
...如何以编程方式获取脚本本身中 myScript.grooy 父目录的路径?
最终,我试图从脚本所在的同一目录中读取多个文件。
编辑:尝试在 Windows 7、Groovy 2.0.1、groovy 控制台上运行它
最佳答案
好吧,解决方案是在 Java 的 File 类中:
println new File(".").absolutePath
如果你想获取同一目录下的所有 groovy 脚本,也许你可以使用 Groovy JDK 中的其他一些工具,比如 eachFile
:def files = []
new File(".").eachFile {
if (it.name.endsWith(".groovy") ) files << it
}
println files
如果你想要正在运行的脚本名称,那么你就有问题( https://issues.apache.org/jira/browse/GROOVY-1642 )根据该 JIRA,这是当前的解决方法(并不总是有效):
URL scriptUrl = getClass().classLoader.resourceLoader
.loadGroovySource(getClass().name)
关于groovy - 在运行时获取 groovy 源文件的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11958185/