Выполнение файла jar консоли

#java #jar #console #share #exe

#java #jar #консоль #Поделиться #exe

Вопрос:

Я создал небольшую консольную текстовую игру, которая принимает пользовательский ввод и что-то еще, и мне было интересно, есть ли какой-либо другой способ запустить ее, кроме перехода к ее местоположению в CMD и ввода java -jar name.jar .

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

Ответ №1:

 cd C:Users...fileDirectory
java -jar name.jar
pause
  

сохраните вышеуказанное в файле execute.bat и дважды щелкните его.

или вы можете просто ввести

 java -jar name.jar
pause
  

и скажите, что он должен быть в папке с вашим jar.

Комментарии:

1. Это сработало, однако окно закрывается сразу после завершения программы, поэтому у меня нет возможности прочитать то, что напечатано непосредственно перед закрытием программы. Как я могу это исправить?

2. Добавить pause инструкцию в .bat файл.

3. @Steven добавьте паузу.

4. Все работало нормально, хотя добавление «start» в начало в bat-файле вызвало некоторые проблемы, моя программа открылась бы в своем собственном окне CMD, а пауза открылась бы в другом окне CMD. Я обошел это, удалив «пуск» в начале, это запускает мою программу и завершает ее паузой, как мне и было нужно! 🙂

5. Интересно. Я запомню это.

Ответ №2:

.bat не будет работать в системе Linux. Таким образом, необязательно, вы можете создать работающий jar.

Каждая современная среда разработки, такая как Eclipse, Netbean или Intellij, может создать для вас один исполняемый jar, поэтому вы можете просто дважды щелкнуть по нему и запустить приложение.

Комментарии:

1. Вы правы, но OP спрашивает о CMD, который является специальным для Windows

2. @xenteros Я знаю, что это просто необязательный ответ, потому что у какого-то друга может быть linux или Mac и так далее. вы знаете, запись выполняется один раз везде 🙂