Проблема с java runtime.exec () при попытке запустить nmap.exe

StackOverflow https://stackoverflow.com/questions/2394761

Вопрос

Я использую Java 1.6, Eclipse, Windows 7. Я пытаюсь запустить команды в программе Java для использования NMAP.

Код :

String cmd[] = { "cmd.exe", "/c","start notepad.exe"};

Process pr = rt.exec(cmd);

работает нормально, но код:

String cmd[] = { "cmd.exe", "/c","start nmap.exe"};

Process pr = rt.exec(cmd);

просто нет.

Я попробовал обе команды в командной строке, они оба работают нормально, но последний не удается, когда я пробую его с помощью Runtime.exec (). Что было бы проблемой?

Заранее спасибо..

Это было полезно?

Решение

Может быть «Когда Runtime.exec () не будет могу помочь тебе.

Причина, по которой команда работает в командной оболочке, а не в Java, может заключаться в том, что командная оболочка имеет преимущество в возможности обратиться к переменной среды пути, чтобы найти ее; Java не может. Я поспори, если вы поставите полный путь к nmap.exe, что вы будете лучше.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top