目前我正与一个发挥团队合作!框架应用程序。与下一个用户的故事,我必须实现一些不同的文件的修改,诸如文件移动到定义的目录。

由于我们在不同的平台上工作,我并不总是真的知道,如果应用程序有正确的道路。所以我想用的应用程序目录的绝对路径的工作。

我如何获得游戏的绝对路径!应用程序吗?是否有一个方法,用于此?

有帮助吗?

解决方案

这个答案只适用于旧版本的游戏框架,V2前。

播放具有应用路径属性:

String projectRoot = Play.applicationPath;

这将会给你玩的是从运行的目录。

我想一个更好的做法是运动项目的目录以外的安装目录,并把它的路径在您的application.conf作为属性。在需要的时候你再取回。例如:

Application.conf:

my.file.path=/tmp/whatever

代码:

String projectRoot = Play.configuration.getProperty("my.file.path");

其他提示

由于版本的 2.5.0 下,play.Play类已被弃用。建议注射play.Environment和使用的方法如下:

public File rootPath();

play.Environment单还含有一些非常方便的方法,该方法通过提供相对路径e.g文件。

public File getFile(String relativePath);
public URL resource(String relativePath);
public InputStream resourceAsStream(String relativePath);

的播放2.0如:。play.Play.application()路径()getAbsolutePath()

无论是那些在我的版本的游戏工作,所以我用这个来代替: Play.current()。路径()。getAbsolutePath()

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top