Что такое артефакт и зачем он нужен Maven?
maven-metadata.xml
и файл с именем <artifactId>-<version>.pom
. Оба этих файла имеют недокументированную схему и семантику.
Что такое артефакт и зачем он нужен Maven?
maven-metadata.xml
и файл с именем <artifactId>-<version>.pom
. Оба этих файла имеют недокументированную схему и семантику.
Ответы:
Артефакт - это файл, обычно JAR, который развертывается в репозитории Maven.
Сборка Maven создает один или несколько артефактов, таких как скомпилированный JAR и «исходный» JAR.
Каждый артефакт имеет идентификатор группы (обычно обратное имя домена, например com.example.foo), идентификатор артефакта (просто имя) и строку версии. Три вместе однозначно идентифицируют артефакт.
Зависимости проекта указываются как артефакты.
В общих терминах программного обеспечения « артефакт » - это нечто, создаваемое процессом разработки программного обеспечения, будь то документация, связанная с программным обеспечением, или исполняемый файл.
В терминологии Maven, артефакт в результате выхода из Maven сборки, как правило, jar
или war
или другой исполняемый файл. Артефакты в maven идентифицируются системой координат groupId, artifactId и version. Maven использует groupId
, artifactId
и version
для выявления зависимостей (обычно другие JAR - файлы) , необходимых для сборки и запуска кода.
Я знаю, что это древняя тема, но я хотел добавить несколько нюансов.
Есть артефакты Maven, артефакты менеджера хранилища, а затем есть Maven Artifact
s.
Артефакт Maven так же, как говорят другие комментаторы / респонденты: это то, что выплевывается при создании проекта Maven. Это может быть .jar
файл, или .war
файл, или .zip
файл, или a .dll
, или что у вас есть.
Артефакт менеджера хранилища - это вещь, которой, в общем-то, управляет менеджер хранилища. Менеджер хранилища - это, по сути, высокопроизводительный сервис именования для программных исполняемых файлов и библиотек. Менеджеру хранилища не важно, откуда берутся его артефакты (может быть, они получены из сборки Maven, или из локального файла, или сборки Ant, или ручной компиляции ...).
Maven Artifact
- это Java-класс, представляющий своего рода «имя», которое разыменовывается менеджером хранилища в артефакт менеджера хранилища. При использовании в этом смысле, Artifact
это просто прославил имя из таких частей , как groupId
, artifactId
, version
, scope
, classifier
и так далее.
Чтобы сложить все вместе:
Artifact
секунд путем его <dependency>
элементов.Artifact
преобразовать эти файлы в файлы, приказывая менеджеру хранилища отправить ему некоторые артефакты менеджера хранилища, которые соответствуют внутренним файлам Artifact
.Надеюсь, это поможет.
mvn install
, люди пытаясь понять, что добавить в эту запись. Таким образом, полное название банки - это то, что нужно вводить -DartifactId=YOUR_ARTIFACT_ID
, верно? Полное имя файла JAR с версией и .jar? Кажется, это то, что вы говорите, но поможет некоторым быть действительно откровенным. Другие ответы близки к этому, но я думал, что ваш лучше.
Maven организует его сборку в проектах.
artifact
В мавена является ресурсом , порожденным проектом Maven. У каждого проекта maven может быть ровно один artifact
такой jar, war, ear
, как a и т. Д.
Файл конфигурации проекта "pom.xml"
описывает, как создается артефакт, как выполняются модульные тесты и т. Д. Обычно сборка программного проекта с maven состоит из многих maven-проектов, которые создают артефакты (например, jars ) которые составляют продукт.
Например
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
.
Q. Что такое Артефакт в Maven?
ОТВЕТ: ARTIFACT - это JAR (WAR или EAR), но это может быть и что-то еще. Каждый артефакт имеет,
В. Почему Мейвен нуждается в них?
Ответ: Maven используется, чтобы сделать их доступными для наших приложений.
-DartifactId=YOUR_ARTIFACT_ID
при запуске mvn install, просто предложение :)
Для maven, процесс сборки организован как набор артефактов. Артефакты включают в себя:
Артефакты живут в репозиториях.
обычно мы говорим о терминологии Maven о идентификаторе группы, идентификаторе артефакта и версии моментального снимка
Идентификатор группы: идентификация группы проекта. Идентификатор артефакта: идентификация проекта. Снимок версии: версия, используемая проектом.
Артефакт - это не что иное, как результирующий файл, такой как Jar, War, Ear ....
просто говорит, что артефакты - это не что иное, как пакеты.