当前位置: 首页 > news >正文

把springboot打包为maven可引入的jar

maven 的install和package只会打包为可执行的几十兆大小的jar包无法作为maven可直接引入的jar

正常的maven jar应该不到1MB 

可以删除启动类相关的东西

mvn install:install-file  -DgroupId=org.example -DartifactId=testjar  -Dversion=0.0.1 -Dfile=d:\demo-0.0.1-SNAPSHOT.jar  -Dpackaging=jar 这样也是没用的

需要在pom中加上如下配置

<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><classifier>exec</classifier> <!-- 可执行JAR使用不同分类器 --><skip>true</skip> <!-- 默认跳过可执行JAR生成 --></configuration><executions><execution><goals><goal>repackage</goal></goals><configuration><skip>false</skip> <!-- 明确指定生成可执行JAR --></configuration></execution></executions></plugin></plugins>
</build>
  1. 打包项目

    mvn clean install

    这会生成两个JAR:

    • your-artifact-version.jar - 普通JAR(可作为依赖)

    • your-artifact-version-exec.jar - 可执行JAR

然后在需要引入jar的项目中pom添加下面配置引入jar(your-artifact-version.jar)

新建lib目录 add as library

<dependency><groupId>com.example</groupId><artifactId>demo</artifactId><version>0.0.1</version><scope>system</scope><systemPath>${basedir}/lib/knowledge-0.0.1-SNAPSHOT.jar</systemPath>
</dependency>

相关文章:

  • VsCode 常用快捷键设置方法
  • arcpy数据分析自动化(2)
  • 【Mini-F5265-OB开发板试用测评】基于ST7735STFT屏幕的LVGL9移植
  • 【Linux驱动开发 ---- 1.1_Linux 基础操作入门】
  • 苍穹外卖--添加购物车
  • Websocket 数据实时更新(消息提醒功能)异步+事件发布
  • 我是如何使用Claude Code
  • 基于NAS与内网穿透技术的远程访问架构设计及安全实现
  • 浏览器实现跨系统交互
  • 【寻找Linux的奥秘】第十章:基础文件IO(上)
  • 华为流程体系拆解系列:L1-L6分层拆解逻辑
  • CentOS 7 环境下 Visual Studio Code 安装与部署
  • 分布式系统全链路监控之一:分布式全链路监控基础概念和OpenTelemetry
  • 5.安装IK分词器
  • 鸿蒙组件通用事件开发全攻略:从基础交互到工程实践
  • 华大TAU1114-1216A00四系统GNSS定位模块,车载/穿戴/IoT全适配!-165dBm高灵敏度,定位快人一步!“
  • 基于nacos和gateway搭建微服务管理平台详细教程
  • 安宝特案例丨突破传统手术室,Vuzix AR 眼镜圆满助力全膝关节置换术
  • 【力扣 中等 C】912. 排序数组
  • 高级网络中间人攻击与加密防护机制
  • 做网站买空间用共享ip/太原seo网络优化招聘网
  • 汕头网站设计开发/百度云链接
  • 公司网站制作费用多少/seo公司优化
  • 邯郸单位网站建设/网站推广什么意思
  • 做外贸的国际网站有哪些/官网seo是什么
  • 网站维护内容/福州seo网站管理