如何在grails中获取应用程序路径?

如何在grails中获取应用程序路径?,grails,groovy,grails-2.0,Grails,Groovy,Grails 2.0,我想在我的应用程序中获取应用程序路径,但我没有找到任何方法。如果有人知道如何在我的应用程序中获取应用程序路径,那就太好了 非常感谢,如果您想获得应用程序的绝对路径,可以这样做 String applicationPath = request.getSession().getServletContext().getRealPath("") 它将为应用程序提供绝对路径。我认为,大多数时候很难在gsp内部找到路径。 但是,您可以使用此: var path = "${resource()}"+"/my

我想在我的应用程序中获取应用程序路径,但我没有找到任何方法。如果有人知道如何在我的应用程序中获取应用程序路径,那就太好了


非常感谢,

如果您想获得应用程序的绝对路径,可以这样做

String applicationPath = request.getSession().getServletContext().getRealPath("")

它将为应用程序提供绝对路径。

我认为,大多数时候很难在gsp内部找到路径。
但是,您可以使用此:

var path = "${resource()}"+"/mycontroller/myaction" ;
提供应用程序的路径。

控制器内部,如需要上传文件时:

def webRootDir = servletContext.getRealPath("/")
def userDir = new File(webRootDir, "/payload/${session.user.login}")
userDir.mkdirs()
uploadedFile.transferTo( new File( userDir, uploadedFile.originalFilename))

将此复制到控制器中

print webRequest.baseUrl

“应用程序路径”是当前实例的文件系统路径还是url路径?否,我需要文件系统路径。例如“c:\apps”顺便问一下,您想如何使用此路径?实际上,我需要它作为IO文件。您知道它通常是一个临时目录吗?它在每次重新启动时都会被删除,并且只包含您在Grails3.0.6中放入原始WAR中的内容(这样您就可以在知道文件系统路径的情况下读取w/o),这已经不起作用了。结果是空的。Grails3.X的解决方案是什么?