Как исключить дубликат jar при компиляции проекта с использованием плагина maven shade - PullRequest
0 голосов
/ 02 марта 2020

Привет всем, я использую приложение Springboot.

Я использую плагин Maven Shade для компиляции проекта. У меня есть общее задание c, которое используется для сборки и развертывания любого проекта Springboot.

Это проблема с плагином maven shade, потому что, когда задание компилирует проект, оно создает два jar-файла и когда задание развертывается. Проект обе банки пытаются запустить, что приводит к ошибке. Есть ли способ создать только одну банку в целевой папке.

Вот pom. xml

<groupId>com.project</groupId>
<artifactId>data-processing-service</artifactId>
<version>0.0.1</version>
<name>data-processing-service</name>
<description>Spark service for data aggregation and analysis</description>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-shade-plugin</artifactId>
            <version>3.2.2</version>
            <dependencies>
                <dependency>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <version>1.5.1.RELEASE</version>
                </dependency>
            </dependencies>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>shade</goal>
                    </goals>
                    <configuration>
                        <transformers>
                            <transformer
                                    implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
                                <resource>META-INF/spring.handlers</resource>
                            </transformer>
                            <transformer
                                    implementation="org.springframework.boot.maven.PropertiesMergingResourceTransformer">
                                <resource>META-INF/spring.factories</resource>
                            </transformer>
                            <transformer
                                    implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
                                <resource>META-INF/spring.schemas</resource>
                            </transformer>
                            <transformer
                                    implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
                            <transformer
                                    implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                <mainClass>com.project.DataServiceApplication</mainClass>
                            </transformer>
                        </transformers>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

Файлы, сгенерированные в цели

-rw-r--r--   1 aadarsh  staff    66K Mar  2 22:34 original-data-processing-service-0.0.1.jar
-rw-r--r--   1 aadarsh  staff   138M Mar  2 22:35 data-processing-service-0.0.1.jar

Мне нужен только второй файл.

...