У меня есть Project A и Project B. У ProjectB есть только проприетарные фляги или сторонние библиотеки, которые нужны ProjectA, которых нет в репозитории maven. Я намеревался упаковать все связанные (группирующие зависимости) jar-файлы Project B в один / несколько jar-файлов. Вопрос в том, как мне установить эти банки и затемнить / собрать их в один сосуд одновременно, используя POM. Я получаю проприетарные банки, установленные отдельно, но не могу их упаковать в одну банку. M2 eclipse также не очень помогает, поэтому я решил использовать команды mvn внутри eclipse. Какая лучшая практика для этого? Я думаю, что затенение их, так как я хочу использовать эти зависимости и в других проектах. Могу ли я установить и заштриховать / собрать jar-файлы (логически сгруппировать связанные зависимости в один jar-файл) одновременно с использованием POM?.
Я следовал этому (из стека через форум потока), он не работал - так как это создает один проектный jar, который ничего не имеет + проприетарные jars отдельно, но не затеняет все jars в один. Я хочу, чтобы они были установлены и объединены в одну банку одновременно.
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.projectdeps</groupId>
<artifactId>sharedlibs</artifactId>
<version>1.0-SNAPSHOT</version>
<name>shared-libs</name>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.3.1</version>
<executions>
<execution>
<id>install activationjar</id>
<goals><goal>install-file</goal></goals>
<phase>validate</phase>
<configuration>
<file>${basedir}/src/main/libs/activation.jar</file>
<groupId>com.mycompany.activation</groupId>
<artifactId>activation</artifactId>
<version>12.8</version>
<packaging>jar</packaging>
</configuration>
</execution>
<execution>
<id>install opsjar</id>
<goals><goal>install-file</goal></goals>
<phase>validate</phase>
<configuration>
<file>${basedir}/src/main/libs/Operations.jar</file>
<groupId>com.mycompany.gcs.ops</groupId>
<artifactId>Operations</artifactId>
<version>12.8</version>
<packaging>jar</packaging>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<filters>
<filter>
<artifact>Operations</artifact>
<includes>
<include>/**</include>
</includes>
</filter>
</filters>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.5</version>
<type>maven-plugin</type>
</dependency>
</dependencies>
</project>