cambiando el directorio de trabajo del comando desde java

Necesito ejecutar un archivo .exe desde una función en uno de los paquetes que tengo en mi proyecto Java. ahora el directorio de trabajo es el directorio raíz del proyecto para java pero el archivo .exe en los subdirectorios de mi proyecto. Así es como se organiza el proyecto:

ROOT_DIR
|.......->com
|         |......->somepackage
|                 |.........->callerClass.java
|
|.......->resource
         |........->external.exe

nicialmente intenté ejecutar el archivo .exe directamente a través de:

String command = "resources\\external.exe  -i input -o putpot";
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec(command);

pero el problema es que .exe externo necesita acceder a algunos archivos en su propio directorio y sigue pensando que el directorio raíz es su directorio. Incluso intenté usar el archivo .bat para resolver el problema, pero surge el mismo problema:

Runtime.getRuntime().exec(new String[]{"cmd.exe", "/c", "resources\\helper.bat"});

y el archivo .bat está en el mismo directorio que el archivo .exe pero ocurre el mismo problema. Aquí está el contenido del archivo .bat:

@echo off
echo starting process...

external.exe -i input -o output

pause

incluso si muevo el archivo .bat a root y soluciono su contenido, el problema no desaparece. por favor por favor ayuda

Respuestas a la pregunta(3)

Su respuesta a la pregunta