Первый вопрос, будь добр, я начал читать о пакетных файлах 12 часов назад.Может ли командный файл передать команду файлу jar?
Я пытаюсь написать командный файл, который будет передавать команду в java-файл jar каждые 30 минут.
Я уверен, что это должно быть возможно, но мой небольшой опыт работы с файлами bat просто не разрезает его.
Вот что я написал до сих пор
@echo off
title Test Program
set /a count=0
start /B java -Xms2G -Xmx2G -jar minecraft_server.1.8.8.jar nogui
timeout /t 15 >nul
goto loop
:loop
set /a mark=30*count
set /a count=count+1
echo say Episode %count% Minute Mark %mark%
timeout /t 5 >nul
goto loop
Для сравнения, пакетный файл ниже будет запускать и запустить файл банку, и если я вводить команды в командной строке, файл банка реагирует на них ,
title run-minecraft
java -Xms2G -Xmx2G -jar minecraft_server.1.8.8.jar
pause
Например, если я типа «сказать привет» во второй программы, пока она выполняется, файл банка выполняет команду «говорить», и появляется «привет» в игре. Первая программа выводит «say Episode ...» каждые пять секунд (я не хочу ждать полчаса во время тестирования) в командной строке, но команда say не выполняется, а желаемое сообщение «Episode # Minute Mark # # "не отображается в игре.
Я думаю, что проблема в том, что я не говорю командной строке для выполнения кода, который командный файл пишет в него, но я не уверен, как это сделать автоматически.
Извините, если это сбивает с толку, потому что я не использую правильные термины, но я не программист и не знаю лучше.
На стороне комментария, сделайте себе одолжение и научитесь использовать powershell вместо партии. Он намного более современен и поддерживается с Vista. – Aaron
Это не проблема пакетного файла. Программа Java должна иметь возможность принимать аргументы командной строки. – Squashman
@Squashman Я считаю, что он говорит о stdin, а не о аргументах командной строки – Aaron