Maven Buil Jar - PullRequest
       28

Maven Buil Jar

0 голосов
/ 17 октября 2018

Я работаю над проектом Maven, и у меня есть jar app-client.jar, который зависит от app-core.jar.Итак, у меня есть pom.xml для app-client.jar, и у этого pom.xml есть зависимость app-core, поэтому мы добавили зависимость app-core в этот pom.xml.Теперь я хочу использовать app-client.jar в своем основном проекте.Потому что этот jar собран локально и недоступен в удаленном хранилище.Поэтому я добавил приложение-клиент, а также указал репозиторий, в котором он будет расположен.следующим образом ..

<repositories>
   <repository>
       <id>repo</id>
       <releases>
           <enabled>true</enabled>
           <checksumPolicy>ignore</checksumPolicy>
       </releases>
       <snapshots>
           <enabled>false</enabled>
       </snapshots>
       <url>file://${project.basedir}/../lib</url>
   </repository>
<repositories>
<dependencies>
   <dependency>
       <groupId>com.sample</groupId>
       <artifactId>app-client</artifactId>
       <version>1.0</version>
   </dependency>
</dependencies>

, а также я поставил свой кувшин следующим образом [Мой модуль] / [com] / [образец] / [приложение-клиент] /[1.0]/app-client-1.0.jar

Когда я запускаю mvn clean install, я получаю сообщение об ошибке app-client, pom.xml не найден.и построить не удалось.Обычно, когда я использую один jar, тогда он работает нормально, но если я использую jar, зависящий от других jar, он терпит неудачу.

Так, как я могу собрать свой app-client jar и их pom, чтобы он вел себя нормально итакже разверните app-core.jar.

Ответы [ 2 ]

0 голосов
/ 17 октября 2018

Если вы соберете app-client.jar с mvn clean install, то он будет установлен в ваш локальный репозиторий Maven (.../.m2/repository).Тогда любой другой проект на том же компьютере может ссылаться на него в своей папке без дополнительной информации.Поэтому не нужно вводить <repositories>.

Если вы хотите работать с несколькими людьми в одном проекте, используйте сервер Nexus / Artifactory для совместного использования jar-файлов.

Решения с папками lib и системойпути устарели и вызывают проблемы.

0 голосов
/ 17 октября 2018

во-первых, когда вы создаете app-client.jar, создайте толстый jar-файл, содержащий зависимость app-core.jar.

Затем копирование app-client-1.0.jar в указанное местоположение локального репозитория не выполняетсяЧтобы добавить этот jar в локальный репозиторий, используйте команду mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> -DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging>.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...