Pregunta

En el momento en el que estoy trabajando con un equipo en un juego! aplicación marco. Con la próxima historia de usuario, tengo que poner en práctica algunas modificaciones diferentes de archivos, como mover un archivo a un directorio definido.

Debido a que estamos trabajando en diferentes plataformas, no estoy siempre muy seguro de si la aplicación tiene el camino correcto. Así que quiero trabajar con una ruta absoluta del directorio de aplicación.

¿Cómo consigo la ruta absoluta de un juego! aplicación? ¿Hay un método para esto?

¿Fue útil?

Solución

Esta respuesta se aplica únicamente a las versiones anteriores del Juego marco, antes v2.

El juego tiene una propiedad de ruta de la aplicación:

String projectRoot = Play.applicationPath;

Esto le dará el directorio que se está ejecutando desde Juego.

Creo que una mejor práctica se está moviendo el exterior directorio de su proyecto de directorio de instalación y colocación de la ruta al mismo en su application.conf como una propiedad. A continuación, recuperar cuando sea necesario. Por ejemplo:

application.conf:

my.file.path=/tmp/whatever

Código:

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

Otros consejos

Desde la versión 2.5.0 , está en desuso clase play.Play. Se recomienda play.Environment inyectar y utilizar el método como sigue:

public File rootPath();

El Singleton play.Environment también contiene algún método muy práctico, que proporcionan los archivos de ruta relativa por ejemplo.

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

Como de juego 2.0:.. Play.Play.application () trayectoria () getAbsolutePath ()

Ninguna de las trabajadas en mi versión del juego, por lo que utiliza en su lugar: Play.current (). Camino (). GetAbsolutePath ()

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top