Имя артефакта Maven! = Имя класса Java
Как прокомментировал Вопрос Эллиот Фриш, имя артефакта (<groupId>
& <artifactID>
), используемое Maven, является произвольным.Это имя не обязательно должно быть связано непосредственно с именами классов в библиотеке, загруженной Maven и установленной в вашем проекте.
Операторы import
в классах, которые вы создаете в файлах .java
, могут полностью отличаться от именования артефактов Maven.
Есть ли способ идентифицировать пакет?
Посетите веб-сайт для библиотечного проекта, в котором вы заинтересованы.Почти любой такой проект будет публиковать фрагмент кода Maven <dependency>
.Например, эта страница из проекта H2 Database Engine .
![Screenshot of a web browser window visiting the H2 Database Engine “Cheat Sheet” page listing a Maven dependency](https://i.stack.imgur.com/CJ3nK.jpg)
Maven находит H2 Database Engine библиотека проекта в репозитории Maven , загружает его и устанавливает в свой проект Java.Затем вы добавляете оператор import
в верхней части файла .java
, чтобы идентифицировать пакет Java класса, который вы хотите использовать.
Обратите внимание на различные именования, как в репозитории Maven артефакт именуется с помощью<artifactId>
из h2
и <groupId>
из com.h2database
, в то время как внутри Java import
составляет org.h2.jdbcx.JdbcDataSource
.
package work.basil.example.h2.pstmt_query;
import org.h2.jdbcx.JdbcDataSource; // ⬅ Import a class from the .jar file that Maven downloaded and installed via the repository artifact named `h2` with groupId of `com.h2database`.
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
…
Чтобы найти Maven для поиска артефакта по имени класса, см. Ответ Дж. Ф. Мейера .