Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision | |||
| linux_faq:maven [2020/04/21 11:37] – [Выкачать зависимости] admin | linux_faq:maven [2020/04/21 12:52] (current) – [Переменные окружения] admin | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Заметки о maven ====== | ||
| + | ===== Переменные окружения ===== | ||
| + | Для работы maven нужны переменные окружения: | ||
| + | * JAVA_HOME | ||
| + | * MAVEN_HOME | ||
| + | * M2_HOME | ||
| + | ===== Инициализация проекта и скачивание плагинов ===== | ||
| + | mvn archetype: | ||
| + | Мавен скачает плагины (архетипы проектов), | ||
| + | - номер архетипа (или оставить дефолтный - quickstart) | ||
| + | - Версию архетипа | ||
| + | - groupId - по соглашению - это имя сайта организации в обратной нотации - com.org.name | ||
| + | - artefactId - название проекта | ||
| + | - version - версию проекта | ||
| + | - package - имя директории, | ||
| + | В итоге - у собранного проекта будет название - artefactId-version | ||
| + | и построит структуру директорий, | ||
| + | Плагины попадут в **~/ | ||
| + | ===== Структура директорий проекта maven ===== | ||
| + | |||
| + | ===== Типичный workflow ===== | ||
| + | mvn clean | ||
| + | Очистит проект. | ||
| + | mvn compile | ||
| + | Соберет код проекта и в итоге - создаст директории **target/ | ||
| + | mvn test-compile | ||
| + | Соберет код тестов проекта и в итоге - создаст директории **target/ | ||
| + | mvn test | ||
| + | Запустит собранные тесты | ||
| + | mvn install | ||
| + | Собрет **jar**-файл и положит его в корень директории **target**. Также - установит его в локальный репозиторий (**~/ | ||
| + | |||
| + | ===== Расширенный workflow ===== | ||
| + | mvn validate | ||
| + | Валидирует проект. | ||
| + | mvn compile | ||
| + | Соберет код проекта и в итоге - создаст директории **target/ | ||
| + | mvn test-compile | ||
| + | Соберет код тестов проекта и в итоге - создаст директории **target/ | ||
| + | mvn test | ||
| + | Запустит собранные тесты | ||
| + | mvn package | ||
| + | Соберет пакет | ||
| + | mvn intergration-test | ||
| + | Запуск интеграционных тестов. | ||
| + | mvn verify | ||
| + | Проверка пакета | ||
| + | mvn install | ||
| + | Собрет **jar**-файл и положит его в корень директории **target**. Также - установит его в локальный репозиторий (**~/ | ||
| + | mvn deploy | ||
| + | Копирует собранный пакет на удаленный репозиторий для дальнейшего использваония в совместной разработке или продакшене. \\ | ||
| + | |||
| + | ===== Выкачать зависимости ===== | ||
| + | Скачать зависимости, | ||
| + | mvn dependency: | ||
| + | Скачать исходники зависимостей: | ||
| + | mvn dependency: | ||
| + | Чтобы скачать зависимости через **proxy** в файлик конфигурации **maven** (**conf/ | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||