Ответы:
Вам придется сделать это в два этапа:
Если у вас нет внутреннего репозитория, и вы просто пытаетесь добавить свой JAR в свой локальный репозиторий, вы можете установить его следующим образом, используя любой произвольный идентификатор группы / artifactIds:
mvn install:install-file -DgroupId=com.stackoverflow... -DartifactId=yourartifactid... -Dversion=1.0 -Dpackaging=jar -Dfile=/path/to/jarfile
Вы также можете развернуть его в своем внутреннем репозитории, если он у вас есть, и хотите сделать его доступным для других разработчиков в вашей организации. Я просто использую веб-интерфейс моего репозитория для добавления артефактов, но вы должны быть в состоянии сделать то же самое, используя mvn deploy:deploy-file ...
.
Затем обновите зависимость в pom.xml проектов, использующих JAR, добавив в элемент следующее:
<dependencies>
...
<dependency>
<groupId>com.stackoverflow...</groupId>
<artifactId>artifactId...</artifactId>
<version>1.0</version>
</dependency>
...
</dependencies>
Вы также можете указать зависимость не в репозитории Maven. Может быть полезно, когда не существует центрального репозитория maven для вашей команды или если у вас есть CI- сервер
<dependency>
<groupId>com.stackoverflow</groupId>
<artifactId>commons-utils</artifactId>
<version>1.3</version>
<scope>system</scope>
<systemPath>${basedir}/lib/commons-utils.jar</systemPath>
</dependency>
На самом деле, изучая это, я думаю, что все эти ответы неверны. Ваш вопрос вводит в заблуждение из-за нашего уровня понимания maven
. И я говорю наш, потому что я только знакомлюсь с maven
.
Если Eclipse
вы хотите добавить файл JAR в свой проект, обычно вы загружаете JAR вручную, а затем помещаете его в каталог lib . С Maven, вы не делаете это таким образом. Вот что вы делаете:
dependency
заявление в свойpom.xml
mvn
Теперь maven
подключим и загрузим jar
вместе со списком зависимостей и автоматически разрешим любые дополнительные зависимости, которые jar
могли иметься. Так что, если jar
также требуется регистрация общего пользования, она также будет загружена.
Я бы сделал это:
добавьте зависимость, как вам нравится в вашем pom:
<dependency>
<groupId>com.stackoverflow...</groupId>
<artifactId>artifactId...</artifactId>
<version>1.0</version>
</dependency>
запустить mvn install
его попытается скачать банку и потерпеть неудачу. В процессе, он даст вам полную команду установки jar с сообщением об ошибке. Скопируйте эту команду и запустите ее! просто да ?!
Я предполагаю, что вы спрашиваете, как отправить зависимость в «известный репозиторий», а не просто спрашиваете, как обновить POM.
Если да, то это то, что вы хотите прочитать.
И для любого, кто хочет настроить внутренний сервер репозитория, посмотрите здесь (половина проблемы с использованием Maven 2 - это поиск документов)