Каков самый простой способ вызвать программу с помощью куска Java-кода? (Программа, которую я хочу запустить, является aiSee, и ее можно запустить из командной строки или из графического интерфейса Windows, а я нахожусь в Vista, но код также будет запущен в системах Linux).Запуск программы из Java кода
ответ
Посмотрите на Process и Runtime классы. Имейте в виду, что то, что вы пытаетесь выполнить, вероятно, не зависит от платформы.
Вот небольшой фрагмент кода, который может быть полезным:
public class YourClass
{
public static void main(String args[])
throws Exception
{
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("name_of_your_application.exe");
int exitVal = proc.exitValue();
System.out.println("Process exitValue: " + exitVal);
}
}
One вопрос в С.О. обсуждая похожие вопросы. Another один. And другой один.
Трудность, с которой вы столкнетесь, заключается в том, как заставить приложение знать путь. Вы можете использовать файл XML или конфигурации, но если вы используете эту ссылку, он должен объяснить, как запустить файл: http://www.javacoffeebreak.com/faq/faq0030.html
Я, вероятно, просто передал в качестве командной строки arg, как предложил Натан. Это неудобно, но это должно будет сделать – 2009-05-10 17:37:28
Вы можете получить экземпляр во время выполнения с помощью Runtime.getRuntime()
и вызвать exec
метод среды выполнения, с для выполнения программы в качестве аргумента.
Например:
Runtime runTime = Runtime.getRuntime();
Process proc = rt.exec("iSee.exe");
Вы также можете захватить вывод программы с помощью получения InputStream из процесса.
хорошо, спасибо; хотя, поскольку вывод является графическим (aiSee отображает графики из описаний GDL), я, вероятно, не буду обрабатывать его дальше; но хорошо знать, что у меня есть этот вариант – 2009-05-10 17:34:56
Вы также можете рассмотреть возможность передачи какого-либо аргумента вашей программе, чтобы облегчить поиск конкретной программы, которую вы хотите запустить.
Это могут быть аргументы командной строки, файлы свойств или системные свойства.
- 1. Запуск внешней Java-программы из Java-программы
- 2. Запуск java-программы из другой Java-программы
- 3. Запуск xjc из кода Java
- 4. Запуск программы Java внутри PHP-кода
- 5. Запуск java-программы из shellscript
- 6. Запуск Java кода из Java
- 7. Запуск другого кода C# из моей программы
- 8. Как Компиляция/Запуск программы Java из программы Java я
- 9. Запуск Java программы 24X7
- 10. Запуск программы CGI Java
- 11. Запуск Java-программы из командной строки
- 12. Запуск Java-программы с помощью Java-программы
- 13. Запуск exe из кода Java
- 14. Запуск Java-программы
- 15. Запуск процесса из строки кода в Java
- 16. Запуск программы из другой программы
- 17. Запуск Java-программы с вводом из файла
- 18. Запуск Java-программы из командной строки
- 19. Проблемы запуск программы Java из пакетного сценария
- 20. Запуск программы Java из командной строки
- 21. Запуск теста JUnit4 - из java-программы
- 22. Запуск Java 3D-программы из командной строки
- 23. Запуск Java-программы из командной строки Linux
- 24. Запуск внешнего исполняемого файла из Java-программы
- 25. Исправление кода кода программы Java
- 26. Запуск Java-программы от Protractor
- 27. Запуск программы Java от Python
- 28. Запуск R-программы с Java
- 29. Запуск java-программы в backend
- 30. Запуск Matlab от Java-кода
Хорошо, спасибо большое. Да, вы правы: он не может быть независимым от платформы (поскольку две системы, вероятно, будут иметь программу в другом месте). О чем я думал? – 2009-05-10 17:31:35