Как проиндексировать репозиторий Maven без Nexus / Artifactory / etc? - PullRequest
8 голосов
/ 18 марта 2011

Я управляю собственным маленьким репозиторием Maven для какого-то открытого источника. У меня нет выделенного сервера, поэтому я использую репозиторий кода Google , развертываю в файловой системе, а затем фиксирую и отправляю. Работает идеально для меня.

Но некоторые инструменты Maven ищут nexus-maven-repository-index.properties и индекс (в GZ). Я хотел бы сгенерировать этот индекс для

  1. избавься от предупреждения, что его здесь нет
  2. Maven не пытается использовать репо для артефактов, которых там нет.

Как я могу это сделать? Есть ли инструмент (основной Java), который может генерировать индекс? Также приветствуются советы о том, как использовать правильные банки Nexus с небольшим инструментом командной строки.

Ответы [ 3 ]

10 голосов
/ 02 октября 2012

Я наткнулся на этот пост, когда искал решение добавить локальный репозиторий в свой проект Maven с помощью IntelliJ Idea.

Поскольку Sonatype изменил свои пути и реорганизовал загрузки со времени последнего поста,обновленное пошаговое руководство для индексирования репозитория для использования с IntelliJ Idea:

  1. Загрузите последний автономный индексатор из здесь .
  2. Извлеките его куда-нибудь и перейдите в этот каталог
  3. С консоли выполните следующую команду: export REPODIR=/path/to/your/local/repo/ && java org.sonatype.nexus.index.cli.NexusIndexerCli -r $REPODIR -i $REPODIR/.index -d $REPODIR/.index -n localrepo
  4. В каталоге .index в каталоге репозитория будут созданы некоторые файлы, включая файл "nexus-maven-repository-index.gz ", который ищет файл IntelliJ.
3 голосов
/ 19 марта 2011

Вы можете использовать интерфейс командной строки Maven Indexer для непосредственного создания индекса, но зачем беспокоиться о размещении собственного репо, если проекты OSS могут бесплатно использовать размещенный репозиторий?

http://nexus.sonatype.org/oss-repository-hosting.html

0 голосов
/ 19 февраля 2015

Я смотрел на индексатор maven ... но я не уверен, зачем это последний параметр indexDir в методе:

 public RepositoryIndexer createRepositoryIndexer(String repositoryId,
                                        File repositoryBasedir,
                                        File indexDir)

это как отправная точка вrepositoryBasedir

...