Problema com Java RunTime.exec () ao tentar iniciar o nmap.exe
-
25-09-2019 - |
Pergunta
Estou usando o Java 1.6, Eclipse, Windows 7. Estou tentando executar comandos em um programa Java para usar o NMAP.
O código :
String cmd[] = { "cmd.exe", "/c","start notepad.exe"};
Process pr = rt.exec(cmd);
Funciona bem, mas o código:
String cmd[] = { "cmd.exe", "/c","start nmap.exe"};
Process pr = rt.exec(cmd);
simplesmente não.
Eu tentei os dois comandos no prompt de comando, ambos funcionam bem, mas o último falha quando eu o tento com o tempo de execução.exec (). Qual seria o problema ?
Desde já, obrigado..
Solução
Pode ser "Quando RunTime.exec () não" não " pode ajudá -lo.
A razão pela qual o comando funciona em um shell de comando e não em Java pode ser que o shell de comando tenha a vantagem de poder se referir à variável do ambiente do caminho para encontrá -lo; Java não pode. Aposto que se você colocar o caminho completo para nmap.exe, você se sairá melhor.