Saltar al contenido

¿Variable de entorno para controlar java.io.tmpdir?

Posterior a de nuestra extensa compilación de datos dimos con la solución este disgusto que suelen tener muchos los usuarios. Te ofrecemos la solución y esperamos que te sea de mucha ayuda.

Solución:

De acuerdo con la java.io.File Documentos de Java

El directorio de archivos temporales predeterminado se especifica mediante la propiedad del sistema java.io.tmpdir. En los sistemas UNIX, el valor predeterminado de esta propiedad suele ser “/tmp” o “/var/tmp”; en los sistemas Microsoft Windows, normalmente es “c:temp”. Se puede dar un valor diferente a esta propiedad del sistema cuando se invoca la máquina virtual Java, pero no se garantiza que los cambios programáticos a esta propiedad tengan algún efecto sobre el directorio temporal utilizado por este método.

Para especificar el java.io.tmpdir Propiedad del sistema, puede invocar la JVM de la siguiente manera:

java -Djava.io.tmpdir=/path/to/tmpdir

Por defecto, este valor debe provenir de la TMP variable de entorno en sistemas Windows

Hmmm, dado que esto lo maneja la JVM, profundicé un poco en el código fuente de OpenJDK VM, pensando que tal vez lo que hace OpenJDK imita lo que hace Java 6 y versiones anteriores. No es tranquilizador que haya una manera de hacer esto que no sea en Windows.

En Windows, OpenJDK get_temp_directory() hace una llamada a la API de Win32 para GetTempPath(); así es como en Windows, Java refleja el valor de la TMP Variable ambiental.

En Linux y Solaris, lo mismo get_temp_directory() funciones devuelven un static valor de /tmp/.

No sé si el JDK6 real sigue estas convenciones exactas, pero por el comportamiento en cada una de las plataformas enumeradas, parece que sí.

Podrías configurar tu _JAVA_OPTIONS variable ambiental. Por ejemplo, en bash esto haría el truco:

export _JAVA_OPTIONS=-Djava.io.tmpdir=/new/tmp/dir

Puse eso en mi secuencia de comandos de inicio de sesión de bash y parece funcionar.

Reseñas y puntuaciones del post

Nos encantaría que puedieras comunicar esta división si lograste el éxito.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *