Je cherche à exécuter un programme externe via la ligne de commande, mais j'ai découvert que je ne peux le faire que si le programme existe dans le répertoire à partir duquel je l'appelle. J'aimerais pouvoir exécuter le programme à partir de n'importe quel répertoire.
J'ai défini la variable Path pour Windows (7) et je suis capable d'exécuter le programme à partir de n'importe quel répertoire manuellement avec la ligne de commande ; cependant je ne peux pas le faire via Java.
Code pertinent :
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec(new String[]{"C:\\AutomateKPI\\GetLog.exe", "-e", rossIP});
Mon problème est que la sortie du programme ci-dessus produit un fichier au nom générique "log.txt". Cela posera des problèmes lors du threLancement de mon programme. S'il est impossible d'utiliser la variable de chemin, je peux alternativement copier le programme dans le nouveau répertoire et le supprimer ensuite. J'aimerais éviter de le faire.
Modifier : Le code ci-dessus fonctionne car GetLog.exe se trouve dans C:\AutomateKPI. Je voudrais faire référence à la variable %PATH% pour pouvoir exécuter GetLog.exe à partir de C:\AutomateKPI\*NewDir*