2011-01-05 2 views
0

Как описание Wscript: Строковое значение, указывающее командную строку, используемую для запуска скрипта: Командная строка должна отображаться точно так же, как если бы вы ввели ее в командной строке.Как использовать Wscript Exec для запуска файла Java

Я могу запустить свой java-файл, используя команду "java test http://www.bbc.co.uk/news/world-us-canada-12116778 " , но он не работает, когда я написал JavaScript ниже. Может ли кто-нибудь сказать мне, почему? Спасибо или могу сказать, что есть какой-то другой метод для вызова моего файла Java при открытии html-файла?

<script type="text/javascript"> 
funciton {} 
var WshShell = new ActiveXObject("WScript.Shell"); 
var oExec= WshShell.Exec(""java test http://www.bbc.co.uk/news/world-us-canada-12116778""); 
while (oExec.Status == 0) 
{ 
    WScript.Sleep(100); 
} 
</script> 
+0

Ну, для запуска таких скриптов необходимо изменить настройки безопасности клиента. Если вы хотите запустить Java-код, возможно, вам следует написать апплет или посмотреть на технологию Java Web Start? – Lukasz

+0

Согласны с Lukas, но если вы зарегистрированы ... У вас есть сообщение об ошибке? Кроме того, ваш вызов означает, что вы вызываете класс под названием «тест». Это означает, что вам нужен файл с именем «test.class» где-то в пути к классам оболочки, которая вызывается. И «java.exe» также должен находиться в PATH, так как он не полностью квалифицирован. Мне кажется, что в конце концов вам нужно будет сделать что-то вроде «c: \ java \ bin \ java.exe -jar test.jar .......», потому что ваша командная строка (оболочка), вероятно, имеет некоторую настройку среды, которую Wscript вызывает из браузера не имеет. – Nicholas

ответ

1

Посмотрите на объект WSHSell-х run method. Для меня работает следующий код:

var shell = new ActiveXObject("WScript.Shell"); 
shell.run("cmd /c java -jar MyApplication.jar"); 
// should work without JARs as well, take care for the working path 

Метод run имеет возможность дождаться возврата программы java.

Надеюсь, это поможет.

+0

он работает, спасибо, очень много :))) – Camellia

+0

@nokul У меня есть jar внутри 'c: // test' папки, я пробовал как' shell.run ("cmd/c java -jar c:/test/MyApplication. банка ");'. Но не работает. Что мне делать? – Santhucool

Смежные вопросы