Что такое автоматически исполняемые банки? - PullRequest
0 голосов
/ 07 мая 2019

Я просматривал документацию по spring-boot-maven-plugin и наткнулся на термин «авто исполняемый jar».

Может кто-нибудь объяснить, что такое jar-файл с автоматическим выполнением и чем он отличается от обычных jar-файлов и как они выполняются автоматически?

В документации Spring-Boot-Maven-Plugin упоминается термин, но не идет дальше, чтобы объяснить его

repackage: создать файл jar или war, который будет автоматически выполняться. Он может заменить обычный артефакт или может быть присоединен к жизненному циклу сборки с помощью отдельного классификатора.

Ответы [ 4 ]

1 голос
/ 07 мая 2019
Could someone please explain me what is an auto executable jar

Полностью исполняемый файл jar может быть выполнен как любой другой исполняемый двоичный файл или он может быть зарегистрирован в init.d или systemd.Это позволяет очень легко устанавливать и управлять приложениями Spring Boot в обычных производственных средах.

Итак, в заключение, как и любой другой исполняемый файл, когда вы используете исполняемый файл jar

how is it different then normal jar files and how they are auto executed?

НуJava-файл, который вам нужно запустить с java -jar

Из документов Spring

0 голосов
/ 07 мая 2019
  • Исполняемый jar - тот, у которого основной класс объявлен в манифесте и может быть запущен с помощью команды java -jar yourJarFile.jar
  • Другие jar - банки jar без delcared main calss.Может быть чем угодно - приложением, библиотекой и т. Д. Тем не менее можно запускать приложение, указав полностью.qualified.class.name в качестве точки входа, например java -cp yourJarFile.jar my.bootstrap.BootstrapClass
  • Автоисполняемые файлы JAR - об этом никогда не слышали:)
0 голосов
/ 07 мая 2019

Я могу предположить, что автоматически исполняемый означает, что вы указали метод main, чтобы его можно было запускать с опциями java -jar, иначе это может быть просто библиотека java. Вот цитата из https://docs.spring.io/spring-boot/docs/current/maven-plugin/repackage-mojo.html

Переупаковывает существующие архивы JAR и WAR, чтобы их можно было выполнить из командной строки с помощью java -jar. С layout = NONE также можно использовать просто для упаковки JAR с вложенными зависимостями (и без основного класса, поэтому не исполняемый).

0 голосов
/ 07 мая 2019

Сборка приложения Springboot для Maven сначала создает ваше собственное приложение и упаковывает его в файл JAR.

На втором этапе (переупаковка) он упаковывает этот jar со всеми файлами jar из дерева зависимостей.в новый упаковщик архив jar.Он также сгенерирует файл Manifest, в котором будет определен класс приложения (также в wrapper jar).

После пакета mvn вы также можете увидеть 2 файла jar в вашей целевой директории.,Исходный файл и файл jar.

Вы можете запустить приложение Springboot с помощью простой команды, например:

java -jar my-springboot-app.jar
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...