JavaRush /Курси /Модуль 3. Java Professional /Залежності у Maven-проекті

Залежності у Maven-проекті

Модуль 3. Java Professional
Рівень 1 , Лекція 3
Відкрита

1. dependency

Тепер давай розберемо ще одну річ, яка зробила Maven таким популярним – керування залежностями.

Якщо хочеш додати до свого Maven-проєкту якусь бібліотеку, тобі лише потрібно додати її до pom-файлу в розділі dependencies. Виглядає це дуже просто.

Давай додамо до нашого проєкту останню версію Spring і Hibernate. Ось як це виглядатиме:

<dependencies>
 
  <dependency>
 <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>5.3.18</version> 
  </dependency>

  <dependency>
 <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> <version>6.0.0.Final</version>
  </dependency>

</dependencies>

Ось і все, більше нічого робити не потрібно. Якщо ти додаси такі рядки до свого проєкту, IDEA одразу завантажить потрібні бібліотеки. За кілька секунд після цього ти зможеш використовувати їх класи у своєму коді.

Важливий момент: якщо заллєш проект на GitHub або надішлеш комусь у вигляді архіву, ця людина гарантовано зможе його зібрати. Уся інформація про бібліотеки, залежності та сценарії складання вже зашита в проєкті.

2. Як шукати бібліотеки в Maven Repository

До речі, я додав XML-код цих двох бібліотек до свого pom.xml менше ніж за хвилину. Непогано, правда? Зараз я навчу тебе швидко додавати до проєкту будь-яку бібліотеку.

По-перше, в інтернеті є центральний публічний Maven-репозиторій, у якому зберігаються мільйони бібліотек. Знаходиться він за посиланням https://mvnrepository.com/: потрібну бібліотеку можна шукати прямо в ньому.

Maven

По-друге, можна ще простіше - одразу пиши в Google "maven hibernate", переходь за першим посиланням і отримаєш:

Maven 2

Обери потрібну версію та натисни на неї. Іноді остання версія містить суфікс Beta, тоді бери щось старіше.

Я обрав версію 6.0.0.Final та перейшов на останню сторінку.

Зеленим квадратом тут виділено код, який потрібно скопіювати до свого pom.xml. Усе.

3. dependency repository

Під час складання проєкту твій Maven спочатку шукатиме вказану бібліотеку (артефакт) у твоєму локальному репозиторії. Якщо він там її не знайде, то потім шукатиме у глобальному Maven-репозиторії. І потім завантажить її до твого локального репозиторію – для прискорення наступного складання.

Але, окрім цих двох репозиторіїв, існують ще й інші.

По-перше, у багатьох великих компаній є maven-репозиторії зі своїми власними бібліотеками.

По-друге, до винаходу Docker багато проєктів після збирання просто клалися до корпоративного Maven-репозиторію. А що? Відмінне місце для зберігання всього. І версіонування знову підтримується.

Загалом, якщо ти раптом вирішиш підключити до свого проєкту сторонній репозиторій, це можна зробити так само просто, як і додавання залежностей:

<repositories>

  <repository>
 <id>public-javarush-repo</id> <name>Public JavaRush Repository</name> <url>http://maven.javarush.com</url>
  </repository>

  <repository>
 <id>private-javarush-repo</id> <name>Private JavaRush Repository</name> <url>http://maven2.javarush.com</url>
  </repository>
 
</repositories>

Кожен репозиторій має три речі: Key/ID, Ім'я та URL. Ім'я можна вказати будь-яке – воно для твоєї зручності; ID теж для твоїх внутрішніх потреб. Фактично тобі потрібно вказати лише URL.

Якщо це публічний репозиторій, ця інформація легко гуглиться, якщо корпоративний, то її нададуть, коли ти отримаєш доступ до такого репозиторію.

Творці Maven вміють стандартизувати, в цьому їм не відмовиш.

Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ