Configurando el entorno para ProcessBuilder

Tengo un problema extraño al configurar el entorno Linux desde Java (1.6); específicamente la variable "PATH".

En pocas palabras, tengo un canal para ejecutar procesos nativos, que utilizajava.lang.ProcessBuilder. El usuario puede configurar opcionalmente las variables de entorno a través de unHashMap llamadoenvironment:

<code>ProcessBuilder pb = new ProcessBuilder(args);
Map<String, String> env = pb.environment();
if (environment != null)
   env.putAll(environment);
Process process = pb.start();
</code>

losenv la variable se establece correctamente, si la vuelco en la consola, con un valor correcto para la variable PATH. Sin embargo, la ejecución del proceso resulta en un lanzamientoException:

java.io.IOException: error=2, No such file or directory

El mismo proceso se ejecuta bien con variables de entorno idénticas en el shell de terminal. Para probar esto, ejecuté Eclipse DESPUÉS de configurar el entorno en el terminal. En este caso elProcessBuilder el proceso se ejecuta correctamente.

Entonces, lo que debe estar sucediendo es que elProcessBuilder no está utilizando el entorno que configuré, sino el entorno actual del sistema.

No puedo encontrar ninguna respuesta satisfactoria a este problema en línea. Tal vez este es un problema específico del sistema operativo? ¿O algo más me estoy perdiendo?

Respuestas a la pregunta(6)

Su respuesta a la pregunta