Мой проект maven pom.xml
объявляет две зависимости.Первая зависимость содержит тип как xml
и классификатор как features
, а вторая - стандартная jar
.Цель состоит в том, чтобы скопировать все прямые зависимости (кроме транзитивных) в папку назначения / зависимости, используя maven-dependency-plugin
.
Какие изменения конфигурации можно внести для копирования следующих зависимостей в папку назначения / зависимости?
1) все прямые зависимости (кроме транзитивных), перечисленные в зависимости типа xml
2)другие прямые зависимости (исключая транзитивные), равные pom.xml
Здесь XML-зависимость - это XML-файл Karaf Feature, состоящий из следующих деклараций maven-зависимостей:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<features xmlns="http://karaf.apache.org/xmlns/features/v1.4.0" name="employee-data-feature">
<feature name="employee-data-feature" description="employee-data-feature" version="1.0.0.SNAPSHOT">
<bundle>mvn:com.example.osgi/employee-data/1.0-SNAPSHOT</bundle>
</feature>
</features>
Iпопытался установить для тега конфигурации значение false, что приводит к копированию всех зависимостей, включая транзитивные.
<groupId>com.example.osgi</groupId>
<artifactId>employee-service</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>bundle</packaging>
<dependencies>
<dependency>
<groupId>com.example.osgi</groupId>
<artifactId>employee-data-feature</artifactId>
<version>1.0-SNAPSHOT</version>
<classifier>features</classifier>
<type>xml</type>
</dependency>
<dependency>
<groupId>com.example.osgi</groupId>
<artifactId>salary-data</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.1.1</version>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<includeScope>runtime</includeScope>
<prependGroupId>true</prependGroupId>
<excludeTransitive>false</excludeTransitive>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>