Что такое артефакт в Maven?
Что такое артефакт и зачем он нужен Maven?
8 ответов
артефакт-это файл, обычно JAR, который развертывается в репозитории Maven.
сборка Maven создает один или несколько артефактов, таких как скомпилированный JAR и JAR "sources".
каждый артефакт имеет идентификатор группы (обычно обратное доменное имя, например com.образец.foo), идентификатор артефакта (только имя) и строка версии. Все трое однозначно идентифицируют артефакт.
зависимости проекта указываются как артефакты.
в общих чертах программного обеспечения "артефакт " что-то произведенное процессом разработки программного обеспечения, будь то документация, связанная с программным обеспечением или исполняемый файл.
в терминологии Maven артефакт является результирующим выходом сборки maven, как правило,jar
или war
или другой исполняемый файл. Артефакты в maven идентифицируются системой координат groupId, artifactId и version. Maven использует groupId
, artifactId
и version
в определите зависимости (обычно другие файлы jar), необходимые для создания и запуска кода.
Maven организует свою сборку в проектах.
An artifact
в maven-это ресурс, созданный проектом maven. Каждый проект maven может иметь ровно один artifact
как jar, war, ear
, etc.
Файл конфигурации проекта "pom.xml"
описывает, как создается артефакт,как выполняются модульные тесты и т. д.
Обычно сборка программного проекта с maven состоит из многих Maven-проектов, которые создают артефакты (например, банки), составляющие продукт.
Например.
Root-Project // produces no artifact, simply triggers the build of the other projects
App-Project // The application, that uses the libraries
Lib1-Project // A project that creates a library (jar)
Lib2-Project // Another library
Doc-Project // A project that generates the user documentation from some resources
артефакты Maven не ограничиваются ресурсами java. Вы можете генерировать любые ресурсы, которые вам нужны. Е. Г. документация, проект-сайт, zip-архивы, Native-библиотек и т. д.
каждый проект Maven имеет уникальный идентификатор, состоящий из [groupId, artifactId, version]
. Когда проекту maven требуются ресурсы другого проекта, в нем настраивается зависимость pom.xml
используя вышеуказанные идентификаторы. Затем Maven автоматически разрешает зависимости, когда сборка вызванный. Артефакты необходимых проектов затем загружаются либо из локального repository
, который является простым каталогом в доме вашего пользователя или из других (удаленных) репозиториев, указанных в вас pom.xml
.
я знаю, что это древняя нить, но я хотел добавить несколько нюансов.
есть артефакты Maven, артефакты менеджера репозитория, а затем есть Maven Artifact
s.
артефакт Maven так же, как говорят другие комментаторы/респонденты: это вещь, которая выплевывается при создании проекта Maven. Это может быть или или или .dll
, или что там у вас.
артефакт менеджера репозитория-это вещь то есть, ну, управляется менеджером репозитория. Менеджер репозиториев-это в основном высокопроизводительная служба именования исполняемых файлов и библиотек программного обеспечения. Менеджеру репозитория все равно, откуда берутся его артефакты (возможно, они пришли из сборки Maven, или локального файла, или сборки Ant, или компиляции вручную...).
Maven Artifact
- Это класс Java, который представляет вид "имени", который разыменовывается менеджером репозитория в артефакт менеджера репозитория. При использовании в этом смысле Artifact
Это просто прославленное имя, состоящее из таких частей, как groupId
, artifactId
, version
, scope
, classifier
и так далее.
чтобы собрать все вместе:
- ваш проект Maven, вероятно, зависит от нескольких
Artifact
s Через его<dependency>
элементы. - Maven взаимодействует с менеджером репозитория для решения этих
Artifact
s в файлы, проинструктировав менеджера репозитория отправить ему некоторые артефакты менеджера репозитория, которые соответствуют внутреннемуArtifact
s. - наконец, после разрешения Maven создает ваш проект и создает артефакт Maven. Вы можете выбрать "превратить это в" артефакт менеджера репозитория, в свою очередь, используя любой инструмент, который вам нравится, отправляя его менеджеру репозитория с достаточной координационной информацией, чтобы другие люди могли найти его, когда они попросите об этом менеджера репозитория.
надеюсь, это поможет.
Q. что такое артефакт в maven?
ANS: артефакт-это Банка(война или ухо), но это может быть и что-то еще. Каждый артефакт имеет,
- идентификатор группы (например, com.ваш.пакет),
- идентификатор артефакта (только имя) и
- строка версия.
три вместе однозначно идентифицируют артефакт.
Q. зачем они нужны Maven.
Ans: Maven используется, чтобы сделать их доступными для наших приложения.
простой ответ на простой вопрос :)
для maven процесс сборки организован как набор артефактов. Артефакты включают:
- плагины, которые составляют Maven сам.
- зависимости, от которых зависит ваш код.
- все, что производит ваша сборка, которая, в свою очередь, может быть потреблена чем-то другим.
артефакты живут в репозиториях.
обычно мы говорим терминологию Maven о Group Id, Artifact Id и Snapshot Version
идентификатор группы: идентификатор группы проекта Идентификатор артефакта: идентификатор проекта Версия моментального снимка: версия, используемая проектом.
артефакт-это не что иное, как некоторый результирующий файл, такой как Jar, War, Ear....
просто говорит, что артефакты-это не что иное, как пакеты.