Когда я создавал приложение Spring Boot, я мог видеть mvnw
и mvnw.cmd
файлы в корне проекта. Какова цель этих двух файлов?
источник
Когда я создавал приложение Spring Boot, я мог видеть mvnw
и mvnw.cmd
файлы в корне проекта. Какова цель этих двух файлов?
Эти файлы из оболочки Maven . Он работает аналогично оболочке Gradle .
Это позволяет запускать проект Maven без установки и представления Maven на пути. Он загружает правильную версию Maven, если он не найден (насколько я знаю по умолчанию в вашем домашнем каталоге пользователя).
mvnw
Файл для Linux (Баш) и mvnw.cmd
для окружающей среды Windows.
Для создания или обновления всех необходимых файлов Maven Wrapper выполните следующую команду:
mvn -N io.takari:maven:wrapper
Чтобы использовать другую версию maven, вы можете указать версию следующим образом:
mvn -N io.takari:maven:wrapper -Dmaven=3.3.3
Обе команды требуют включения maven PATH
(добавьте путь к maven bin
для Path
системных переменных), если в вашем проекте уже есть mvnw, который вы можете использовать ./mvnw
вместо mvn
команд.
mvn
команду для работы Maven, хотя я мог использовать./mvnw
для той же цели.Команда
mvnw
использует Maven, который по умолчанию загружается~/.m2/wrapper
при первом использовании.URL с Maven указывается в каждом проекте по адресу
.mvn/wrapper/maven-wrapper.properties
:Чтобы обновить или изменить версию Maven, выполните следующие действия (не забывайте о
--non-recursive
многомодульных проектах):или просто измените
.mvn/wrapper/maven-wrapper.properties
вручную.Чтобы создать оболочку с нуля с помощью Maven (она должна быть
PATH
запущена:источник
Maven Wrapper является отличным выбором для проектов , которые нуждаются в конкретной версии Maven (или для пользователей , которые не хотят , чтобы установить Maven на всех). Вместо того, чтобы устанавливать многие его версии в операционной системе, мы можем просто использовать специфический для проекта скрипт-обертку.
mvnw: это исполняемый скрипт оболочки Unix, используемый вместо полностью установленного Maven
mvnw.cmd : это для среды Windows
Случаи использования
Оболочка должна работать с различными операционными системами, такими как:
После этого мы можем выполнить наши цели для системы Unix следующим образом:
И следующая команда для Batch:
Если в свойствах оболочки нет указанного Maven, он будет загружен и установлен в папку
$USER_HOME/.m2/wrapper/dists
системы.Плагин Maven Wrapper
Плагин Maven Wrapper для автоматической установки в простом проекте Spring Boot.
Сначала нам нужно зайти в главную папку проекта и запустить эту команду:
Мы также можем указать версию Maven:
Опция -N означает –non-recursive, так что оболочка будет применяться только к основному проекту текущего каталога, а не к каким-либо подмодулям.
источник
Безусловно, лучшим вариантом в настоящее время является использование контейнера maven в качестве инструмента для сборки. Такой
mvn.sh
сценарий будет достаточно:источник