2013-05-10 4 views
1

Я тестирую tidesdk.выполнить команды другой программы из программы tidesdk

У меня есть программа java, которая читается со стандартного ввода. я запустить программу через консольные консоли

java -cp MyProgram.jar package.MyMainClass 

И затем выполнить команды и получить результаты.

Есть ли какой-либо способ сделать сеанс?

Edit: Проблема заключалась в том, что вызывает программу Java со списком из одного элемента (который содержит команду, разделенные пробелами) Это решается с переходом каждое слово к элементу списка (и удаление пробелов) , Прямо сейчас у меня есть porblemas, чтобы написать стандартный ввод. Это то, что я пытаюсь.

var input = Ti.Process.createPipe(); 

var process = Ti.Process.createProcess({ 
        args:['java', '-cp', 'C:/.../MyProgram.jar', 'package.MyMainClass'], 
        stdin: input 
       }); 

    //process.setOnReadLine(function(line) { alert(line) }); 
    process.launch(); 

    input.write("comand parameter1 parameter2\n"); //This line does not work 

Программа java начинается. Но никогда не получает команду.

ответ

2

Оформить заказ Документация процесса Ti.Process.createProcess. Это именно то, что вы ищете:

http://tidesdk.multipart.net/docs/user-dev/generated/#!/api/Ti.Process

+0

большое спасибо. Я отредактировал вопрос, чтобы объяснить возникшую у меня проблему. Программа Java не получает никакой команды от стандартного ввода. – user60108

+1

Обычно я передавал необходимые параметры в качестве параметров командной строки для процесса. Это может быть не реализованная функция или ошибка в классе процессов. Мы посмотрим на это. Можете ли вы отправить файл https://github.com/TideSDK/TideSDK/issues –

+0

Я создал проблему https://github.com/TideSDK/TideSDK/issues/190 Надеюсь, вы понимаете. благодаря – user60108

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