powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / перенаправить ввод для java.exe в командной строке
3 сообщений из 3, страница 1 из 1
перенаправить ввод для java.exe в командной строке
    #38257151
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос, наверное, глупый, просто я в яве не разбираюсь. Ситуация такая:

Запускаю
java -jar prog.war
Далее меня просят ввести штук 5 параметров поочередно. А я хочу сделать это 1 командой.

Причем в докуменации на prog такой возможности нет. Код я тоже поменять не могу, исходников нет.

Пробую так (windows)

echo parameter1 | java -jar prog.war
java -jar prog.war < parameters.txt
java -jar prog.war parameter1

Но он мне вводит туда null почему-то в первых 2-х вариантах.
С левой консольной программой работает ок, хотя там пустые строки не критичны.
Может быть есть другие варианты, например эти параметры можно как-то задать java-specific способом, даже если prog.war этого как бы не предусматривает ?
...
Рейтинг: 0 / 0
перенаправить ввод для java.exe в командной строке
    #38257284
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SvDevКод я тоже поменять не могу, исходников нет. Воспользуйтесь этим
...
Рейтинг: 0 / 0
перенаправить ввод для java.exe в командной строке
    #38257442
avp.mk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так можно
Wrp.java
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
package wrp;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Date;

public class Wrp {

    private static final String PATH = "D:\\ellipse.ear";

    public static void main(String[] args) throws IOException {
        System.out.printf("start %tT\n", new Date());
        
        String[] params = {"java", "-jar", PATH};
        Process process = Runtime.getRuntime().exec(params);
//        ProcessBuilder pb = new ProcessBuilder(params);
//        Process process = pb.start();
        
        BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(process.getOutputStream()));
        writer.write("11.5");
        writer.newLine();
        writer.write("55\n3\n5\n999999");
        writer.newLine();
        writer.flush();
        
        BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
        String line;
        while ((line = reader.readLine()) != null) {
            System.out.println(line);
        }
    }
}

...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / перенаправить ввод для java.exe в командной строке
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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