Duplicar posibles:
How do I set environment variables from Java?¿Cómo establecer una variable de entorno en Java usando exec?
Estoy tratando de establecer una variable de entorno, y leer de nuevo para verificar que se estableció en realidad.
Tengo el siguiente:
import java.io.IOException;
public class EnvironmentVariable
{
public static void main(String[] args) throws IOException
{
Runtime.getRuntime().exec("cmd.exe set FOO=false");
String s = System.getenv("FOO");
System.out.println(s);
}
}
Sin embargo, parece que FOO
siempre es nula, es decir, su probablemente no está correctamente instalada.
¿Tengo el comando exec correcto? Los javadocs afirman que puede tomar un argumento de cadena como el comando.
¿Alguna idea?
¿Hay alguna forma de evitarlo? Quiero establecer la variable de entorno y luego usarla más tarde (en otro proceso iniciado por Ant) – Jimmy
@ James.Elsey: En ese caso, tendrás que establecer la variable antes de lanzar hormiga, o desde dentro de la hormiga misma. No podrá cambiar la variable de un subproceso de hormiga y de alguna manera hacerla visible a otro subproceso de hormiga. – NPE
@James, si está iniciando un proceso de Ant, entonces tiene la oportunidad de establecer variables de entorno en ese proceso en ese punto (cuando lo ejecuta desde Ant). – sudocode