Сервер Bukkit запускает цикл пакетного файла

Итак, в основном, что я хочу сделать, это запустить сервер Bukkit с измененным использованием оперативной памяти и настроить пакетный сценарий так, чтобы при остановке сервера он перезапускался в начале пакетного файла, но иметь меню с временным значением по умолчанию опция, которая автоматически перезагружает сервер. Второй вариант позволит мне прервать пакетный файл, чтобы предотвратить повторный запуск сервера после его остановки.

Я хочу, чтобы скрипт запускался так: "C:\program files\Java\jre7\bin\java.exe" -Xincgc -Xmx4G -jar "craftbukkit.jar"

Итак, меню должно выглядеть примерно так: press 1 to start bukkit, press 2 to exit the script.

Вариант один будет приурочен к автоматическому запуску.

Я смог зайти так далеко, имея меню, и оно запускает его автоматически, но после того, как я выполню команду остановки в Bukkit, оно просто выходит, и я не могу понять, как заставить его перезапуститься в начале скрипта .

Вот рабочее меню, а не возврат к началу после завершения программы,

:start
choice /c:CN /n /m "bukkit will start in 5 seconds. Press  to restart Now, or C to exit" /t:5 /d:N
if errorlevel 2 ("C:\program files\Java\jre7\bin\java.exe" -Xincgc -Xmx4G -jar "craftbukkit.jar"  ) else goto start

Но мой исходный сценарий таков, что приостанавливает окно после выхода из программы:

"C:\program files\Java\jre7\bin\java.exe" -Xincgc -Xmx4G -jar "craftbukkit.jar"
pause

Я помню, что мог сделать что-то подобное с autoexec.bat с Windows XP, и он вернулся в меню после завершения пункта меню.

Любая помощь будет оценена по достоинству.


person B4wii    schedule 06.05.2013    source источник


Ответы (1)


Попробуйте поставить этот код после паузы.

GOTO start

У меня есть командный файл, похожий на этот, я использовал его для автоматического перезапуска сервера, если / когда он выходит из строя. Я также использую его для быстрого перезапуска из игры.

Взглянем:

@ECHO OFF
title Bukkit
color A
:start
IF /I "%PROCESSOR_ARCHITECTURE:~-2%"=="64" "%ProgramFiles(x86)%\Java\jre7\bin\java.exe" -Xincgc -Xmx1024M -jar "bukkit.jar" nogui
IF /I "%PROCESSOR_ARCHITECTURE:~-2%"=="86" java -Xincgc -Xmx1024M -jar "bukkit.jar" nogui
goto start
person Alice    schedule 06.05.2013
comment
здорово, что работает, и теперь я добавил timeout 5 перед первым оператором if, что позволяет мне использовать CTRL + C для остановки командного файла во время тайм-аута. - person B4wii; 06.05.2013
comment
Кроме того, глядя на ваш код для архитектуры процессора, у вас есть неправильный каталог файла для 64-битной Java, предполагая, что если они работают с 64-битной Java, что рекомендуется, это будет в программных файлах, а не в программных файлах x86. - person B4wii; 07.05.2013
comment
В этом случае я использовал 32-битную версию Java. - person Alice; 07.05.2013