0
点赞
收藏
分享

微信扫一扫

SpringBoot 打包成的可执行jar不能被其他项目依赖的问题

绪风 2022-04-14 阅读 82

springboot默认可执行jar

如果正常打包Springboot项目会打成一个可执行jar,并且里面会有全部的依赖jar。
在这里插入图片描述
就是上面的拥有BOOT-INF文件。这样的可执行jar是无法被其他项目进行pom依赖使用的。

不可执行jar

如果非要将 Spring Boot 打包成一个普通 jar 被其他项目依赖,技术上来说,也是可以的,给 spring-boot-maven-plugin 插件添加如下配置:

<build>
  <plugins>
    <plugin>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-maven-plugin</artifactId>
      <configuration>
        <classifier>exec</classifier>
      </configuration>
    </plugin>
  </plugins>
</build>

在这里插入图片描述

第一个jar是可以被导入的不可执行jar,并且去掉了所有依赖jar,
而第二个相反,是可执行jar,并且拥有所有依赖jar。

当使用SpringBoot项目打成的不可执行jar包到其他项目中

一定要在

@SpringBootApplication
@MapperScan({"cn.com.xxx.mapper","cn.com.xxx.dao"})
@ComponentScan({"cn.com.wind.windbdgriskvalidserver"})
@ComponentScan({"cn.com.demo"})
@EnableScheduling
public class Application{
    public static void main(String[] args) {
        Application.run(Application.class, args);
    }
}
举报

相关推荐

0 条评论