what is maven maven tutorial
Цей вступний посібник для Maven пояснить, що таке Maven, навіщо використовувати Maven, його визначення, основні термінології, типи сховища Maven тощо:
У цьому підручнику ми вивчимо Maven, його визначення, огляд, операційні кроки щодо Maven та зрозуміємо основні термінології Maven, дії, що виконуються Maven, та типи сховищ Maven у деталях.
Давайте розпочнемо!!
Список підручників у цій серії Maven
Підручник No1: Що таке Maven - Підручник Maven для початківців (Цей підручник)
Підручник No2: Що таке POM (об'єктна модель проекту) та Pom.Xml у Maven
Підручник No3: Gradle Vs Maven і Maven Plugins
Підручник No4: Залежність Maven та інтеграція із Eclipse та TestNG
Підручник No5: Maven With Jenkins & Maven Документація до проектів
Підручник No6: 31 Найпоширеніші запитання та відповіді на інтерв'ю Maven
Що ви дізнаєтесь:
Що таке Maven
Maven - це інструмент побудови та управління проектами, який зазвичай використовується в фреймворках, побудованих на Java. Він розроблений Apache Software Foundation. Maven, слово з мови ідиш, означає «збирач знань». Він був введений, щоб зробити процес запуску побудови в Джакартському турбінному проекті.
Maven контролюється файлом Project Object Model (pom). Під час роботи з вбудованими фреймворками Java нам часто доводиться мати справу з низкою залежностей.
До того, як Maven з'явився в картині, усі залежності, які є не чим іншим, як файлами JAR, повинні були бути додані в наш фреймворк вручну. Крім того, нам потрібно було подбати про оновлення програмного забезпечення в нашому проекті.
який хороший додаток для завантаження mp3 для android
Maven забезпечує автоматичне завантаження JAR-файлів та бібліотек проекту. У файлі pom .xml має бути описана лише інформація, що стосується версій програмного забезпечення та типу залежностей.
Maven може опікуватися проектами на Ruby, C # та інших мовах. Він бере на себе завдання побудови проектів, їх залежностей та документації.
ANT, ще один інструмент, розроблений Apache Software Foundation, також використовується для побудови та розгортання проектів. Але Maven є більш просунутим, ніж ANT. Як і ANT, Maven спростив процес збірки. Таким чином, коротко, Maven полегшив життя розробників.
Навіщо використовувати Maven
Maven виконує наступні дії:
- Сховище для отримання залежностей.
- Наявність подібної структури папок в організації.
- Інтеграція з інструментами безперервної інтеграції, такими як Дженкінс.
- Плагіни для виконання тесту.
- Він надає інформацію про те, як розробляється програмне забезпечення / проект.
- Процес побудови спрощений та послідовний.
- Надає вказівки щодо найкращих практик, яких слід дотримуватись у проекті.
- Підвищує ефективність проекту.
- Легко перейти до нових атрибутів Maven.
- Інтеграція з інструментами контролю версій, такими як Git.
Maven опікується такими процесами, як випуски, розповсюдження, звітування, збірки, документація та SCM. Maven підключається до центрального сховища Maven і завантажує їх локально. Деякі з IDE, які підтримують розробку проектів за допомогою Maven, - це NetBeans, Eclipse, IntelliJ тощо.
Maven слід використовувати в наших проектах у таких сценаріях:
- Якщо проект вимагає великої кількості залежностей.
- Якщо версія залежностей потребує частої модернізації.
- Якщо проект повинен мати швидку документацію, компіляцію та упаковку вихідного коду у файли JAR або ZIP.
Оперативні кроки Мейвена
# 1) Спочатку Maven проходить через файл POM .xml.
# два) Залежності завантажуються до локального сховища.
# 3) Проходить вбудовані життєві цикли Maven, як показано нижче:
- За замовчуванням: Подбає про розгортання проекту.
- Чистота: Видаляє будь-які помилки, тим самим очищає проект і видаляє артефакт, створений у попередньому процесі збірки.
- Сайт: Дбає про документацію проекту.
# 4) Кожен вбудований цикл має кілька фаз. Наприклад, за замовчуванням двадцять три фази, тоді як чистий і сайт має три та чотири фази відповідно.
# 5) Кожен цикл Мейвена проходить кілька етапів, де конкретна стадія має певну мету.
Деякі важливі етапи перелічені нижче:
- Перевірити: Перевіряє, чи доступні всі дані передумов для завершення збірки.
- Скласти: Вихідний код компілюється.
- Тест-компіляція: Створено тестовий вихідний код.
- Тест: Виконуються модульні тестові кейси.
- Упаковка: Вихідний код компілюється та упаковується у файли JAR або ZIP.
- Тест інтеграції: Пакет розгортається, і якщо виникають проблеми, виконуються тестові випадки інтеграції.
- Встановити пакет: Він встановлюється в локальному сховищі.
- Розгортання: Копія пакету доступна з віддаленого сховища.
Ці етапи повинні виконуватися по порядку. Крім того, якщо розгорнути фаза, тобто кінцева фаза циклу Мавена повинна бути виконана, тоді всі попередні фази цього циклу повинні бути успішно завершені.
З командного рядка фази запускаються наступним чином:
мвн , наприклад, mvn перевірити
# 6) Група цілей Мейвена складає фазу. Як і на етапах Maven, кожна мета повинна виконуватися в певному порядку.
Мета має такий синтаксис:
Плагін: мета
Тут ми обговорили деякі етапи разом із цілями, пов’язаними з ними:
- компілятор: компіляція (використовується на етапі компіляції)
- компілятор: тест (використовується на етапі складання тесту)
- Безперечний: тест (використовується на етапі тестування)
- install: встановити (використовується на етапі встановлення)
- банка: війна (використовується у фазі упаковки)
- війна: війна (використовується у фазі упаковки)
Етапи роботи, як працює Maven, схематично показані нижче:
Термінології в Maven
- ПОМ : Це означає об’єктну модель проекту. Це XML-файл, що містить інформацію про проект, залежності, наявні в проекті, каталог вихідного файлу, інформацію про плагіни тощо. Це необхідні дані для Maven, щоб повністю побудувати проект. Maven читає файл pom, щоб отримати всю цю інформацію.
Проект Maven в Eclipse IDE із фрагментом коду з файлу POM XML показано нижче.
- Ідентифікатор групи : Визнає наш проект унікально з усіх проектів. GroupId є частиною файлу pom. Це часто говорять як ідентичність групи проектів.
- ArtefactId : Файл jar, який розгортається у сховищі Maven. ArtifactId є частиною файлу pom. Це часто називають ідентичністю та назвою нашого проекту.
- Версія : Вказує версію jar проекту. Версія також є частиною файлу pom.
Як показано на зображенні вище, ми можемо це побачити, і теги складають частину залежностей, визначених для проекту.
- Центральне сховище Maven : Це заповнювач, де присутні банки, бібліотеки, плагіни та дані конфігурації, необхідні Maven для побудови проекту.
Якщо ми хочемо додати залежності Selenium у наш проект, тоді нам потрібно мати наведений нижче фрагмент коду до файлу pom.
org.seleniumhq.selenium selenium-java 4.0.0-alpha-5
Із безлічі проектів, розміщених у центральному сховищі Maven, він ідентифікує Селен за допомогою groupId. Подібним чином ArtifactId - це як підпроект під груповим ідентифікатором.
як запустити торрент-файл -
Наприклад, Код селену підтримується такими мовами, як Java, C # тощо. Тут, з артефакту Ід, видно, що ми підключаємось лише до JAR-файлів, пов’язаних з Java. Крім того, версія JAR, яка буде пов'язана з проектом, також є частиною залежностей.
Ми також можемо опублікувати власний проект у сховищі Maven, надавши ці три відомості.
Сховище Maven
Репозиторій Maven може бути трьох типів:
- Локальне сховище
- Віддалене сховище
- Центральне сховище
Після того, як Maven прочитає залежності з файлу POM, він спочатку шукає їх у локальному сховищі, потім у центральному і, нарешті, у віддаленому сховищі. Якщо залежності не знайдені в жодному з трьох сховищ, користувач отримує повідомлення про помилку та процес зупиняється.
# 1) Місцеве сховище Maven
Місцеве сховище знаходиться в нашій локальній системі - переважно в .м2 Каталог (C: / Users / superdev /.m2), який показує свою присутність після встановлення Maven у нашій системі, і ми змогли успішно виконати команду Maven.
Це місце також можна змінити в settings.xml (MAVEN_HOME / conf /settings.xml) за допомогою localRepository тег.
Під фрагментом коду xml показано, як змінити розташування локального сховища:
C: Maven m2 # 2) Центральне сховище Maven
Центральне сховище розробляється групою Apache Maven і розміщується в Інтернеті. Це вважається центральним сховищем, і в ньому є всі загальні бібліотеки. Як і локальне сховище, ми також можемо змінити місце, куди їх слід завантажити за замовчуванням, змінивши параметр.xml.
# 3) Віддалене сховище Maven
Віддалене сховище також розміщується в Інтернеті. У деяких сценаріях компанія може розробити власне віддалене сховище та виконувати розгортання своїх приватних проектів. Вони належатимуть цій конкретній компанії, і ними можна буде керувати лише всередині неї.
Віддалене сховище має подібні робочі шаблони, як центральне сховище. Коли від цих сховищ потрібні будь-які залежності або конфігурації, вони спочатку завантажуються в наш локальний, а потім використовуються.
Зразок коду xml для віддаленого сховища з ідентифікатором та url показаний нижче.
com.src.repository http://maven.comp.com/maven2/
Висновок
Ми сподіваємось, що ви чітко уявили, що таке maven, чому ми використовуємо Maven, операційні кроки Maven, цикли Maven, фази, цілі, основні термінології Maven та типи сховищ Maven.
У нашому наступному підручнику ми дослідимо, як створити проект у Maven, середовище, налаштоване для Maven, та багато інших пов’язаних тем.
Рекомендована література
- Інтеграція Maven з TestNg за допомогою плагіна Maven Surefire
- Підручник з AWS CodeBuild: Витяг коду з Maven Build
- Налаштування Maven за допомогою Eclipse Java IDE
- Що таке POM (об'єктна модель проекту) та pom.xml у Maven
- Gradle Vs Maven і Maven Plugins
- Maven With Jenkins & Maven Документація до проектів
- 31 Найпоширеніші запитання та відповіді на інтерв'ю Maven
- Залежність Maven та інтеграція із Eclipse та TestNG