Spring Boot 2.2.1在构建时创建两个jar [重复]

Posted

技术标签:

【中文标题】Spring Boot 2.2.1在构建时创建两个jar [重复]【英文标题】:Spring Boot 2.2.1 Create two jar's while Build [duplicate] 【发布时间】:2020-03-24 15:51:56 【问题描述】:

我正在开发Spring boot 版本2.2.1.RELEASE。在构建我的项目时,将创建两个具有executable jar fileoriginal file 类型的jar,如下所示

原因是

Maven 首先构建我的项目并打包我的类和 将资源放入 jar ($artifactId.jar) 文件中。

然后,进行重新包装。在这个目标中,所有的依赖 pom.xml中提到的都打包在一个新的WAR里面 ($artifactId.jar) 并且之前生成的战争被重命名为 $artifactId.jar.original.

Pom.xml

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>  
              <executions>
                 <execution>
                     <goals>
                         <goal>repackage</goal>
                     </goals>
                 </execution>
             </executions>         
            <configuration>    
                <mainClass>com.data.MainService</mainClass>
            </configuration>
        </plugin>
    </plugins>
</build>

如何避免创建ORIGINAL File类型的jar文件。

maven 中是否有任何禁用/排除技术。

我也试过关注&lt;build&gt;

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>                         
                <configuration>    
                    <mainClass>com.data.MainService</mainClass>
                </configuration>
            </plugin>
        </plugins>
    </build>

【问题讨论】:

【参考方案1】:

根据实现 jar.original 是预期的。没什么好担心的。

重新打包创建新的jar文件并将旧的重命名为jar.original

https://docs.spring.io/spring-boot/docs/current/reference/html/build-tool-plugins.html#build-tool-plugins-repackage-implementation

【讨论】:

以上是关于Spring Boot 2.2.1在构建时创建两个jar [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot 2.2.1 RELEASE 构建错误相对路径

在同一上下文中通过 Spring Boot 创建的对象的两个不同哈希码

Gradle 如何配置构建文件以从同一项目创建 Spring boot jar 和 spring web-mvc war

微服务构建:Spring Boot

创建Spring Boot项目

Spring Boot Docker 应用程序