я прочитал на "Introduction to Repositories" чтоЧто такое репозиторий Maven?
репозиторий в Maven используется для хранения строить артефакты и зависимости различных типов.
По browsing a remote Maven repository я вижу, что артефакт очевидно каталог удовлетворяющих некоторые ограничения, например, он должен содержать файл с именем maven-metadata.xml
и файл с именем <artifactId>-<version>.pom
. Оба этих файла имеют некоторую схему и семантику. Я также вижу, что у меня есть «локальный репозиторий» на ~/.m2/repository
. Но структура каталогов отличается, например. файлов maven-metadata.xml
. Таким образом, удаленный репозиторий и мой локальный репозиторий кодируют одни и те же данные по-разному.
Но я, очевидно, догадываюсь, и ни документация, ни любые другие ответы на СО, не выясняют мои вопросы. Итак - что является репозиторием Maven, формально? И как это кодируется в удаленных репозиториях и локальных репозиториях?
Вот догадка ответ:
Хранилище представляет собой карту от GAVS до сборки артефактов. GAV - это тройка (groupId, artifactId, version), где каждый компонент является строкой. A build artifact - карта от filenames до содержание файла.
Хранилище поддерживает две операции:
getBuildArtifact
, который принимает ВДС и возвращает связанный сборки артефакт если данное Г.А.В. отображается в хранилище; иputBuildArtifact
, который отображает предоставленный GAV предоставленному артефакту .[...]
Почему вы ожидаете ответов, если вы уже сами ответили на свой вопрос. Я не знаю, чего вы хотите ожидать и с какой целью? – khmarbaise
Я * не ответил на вопрос сам. Это предположение, которое нужно исправить и расширить. – jameshfisher