0

我需要在 Scalatra 应用程序中访问服务器上的文件路径。没有战争文件,以下对我有用,文件存储在 /src/main/resources/data 位置。

this.getClass.getResource("/data").getPath

但是,这不适用于已部署的应用程序。任何想法我应该如何获得上下文。

谢谢,

4

1 回答 1

0

这个问题与如何获取正在运行的 JAR 文件的路径几乎相同?
但是,在 Scala 的情况下,您可以使用:

new File(classOf[YourClassName].getProtectionDomain.getCodeSource.getLocation.toURI.getPath)

例如,要查找 web.xml 是: 我们的 war/WEB-INF 文件夹中资源的文件路径?

val context: ServletContext = getServletContext()
val fullPath = context.getRealPath("/WEB-INF/web.xml")
于 2015-07-15T13:04:05.890 回答