powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / [java unix] Выполнить консольную программу и собрать output на stdout
5 сообщений из 5, страница 1 из 1
[java unix] Выполнить консольную программу и собрать output на stdout
    #33834540
cooluser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запускать внешние программы в отдельном процессе java умеет, для этого есть семейство методов Runtime.exec(): http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Runtime.html#exec(java.lang.String)

Но необходимо выполнить внешную консольную программу и собрать результаты вывода на stdout, возможно ли это?

Работает под ОС Linux
...
Рейтинг: 0 / 0
[java unix] Выполнить консольную программу и собрать output на stdout
    #33834576
cooluser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отвечаю сам себе, можно:
http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html

А вообще, насколько это правильно из JVM вызывать внешние программы? Можно ли найти себе проблем при таком способе взаимодействия?
...
Рейтинг: 0 / 0
[java unix] Выполнить консольную программу и собрать output на stdout
    #33835131
mors78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Теряешь кросплатформенность, но для корректной работы под разными операционнками можно вставлять проверки:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
        String os = System.getProperty("os.name");
         if (os.startsWith("Linux")) {
           ...
           Process p = Runtime.getRuntime().exec(command);
            ...
        } 
         if (os.startsWith("Windows")) {
           ...
        }
...
Рейтинг: 0 / 0
[java unix] Выполнить консольную программу и собрать output на stdout
    #33835192
cooluser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кросплатформенность пофигу

Что еще?
...
Рейтинг: 0 / 0
[java unix] Выполнить консольную программу и собрать output на stdout
    #33835916
Shkel Eugene
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заметил странный бок, при выполнении exec(команда, список параметров, рабочий каталог) команда должны задаваться с полным путем, и нельзя выполнить отностельно рабочего каталога. Особено программу с параметрами(Винда). В чем проблема определить не смог. :(
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / [java unix] Выполнить консольную программу и собрать output на stdout
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]