IDEA 在 maven 项目打 war 包时将外部第三方引入的 jar 包
项目打 war 包发布时,由于引入了第三方 Jar 包,导致打包失败,打包不成功。接下来我就将 maven 打包需要引入额外的 Jar 包详细过程分享出来,有问题大家一起讨论。
一、配置补全的 pom 文件中打包的插件依赖
原始默认使用打包插件依赖
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin>
修改后的打包插件【需要导入系统之外的 Jar 包】
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <includeSystemScope>true</includeSystemScope> </configuration> </plugin>
在 Sprinboot 项目中 pom.xml 文件加 <includeSystemScope>true</includeSystemScope>,代表 maven 打包时会将外部引入的 jar 包(比如在根目录下或 resource 文件下新加外部 jar 包)打包到项目 jar,在服务器上项目才能运行,不加此配置,本地可以运行,因为本地可以再 lib 下找到外部包,但是服务器上 jar 中是没有的。
二、设置导入第三方 Jar 的目录结构
一般情况下,在项目的 resources 目录下,创建 lib 目录,然后导入指定的第三方 Jar 包;
三、在 pom.xml 文件中需要引入该依赖
注意:
${project.basedir}理解:${basedir}
项目的根目录(包含pom.xml文件的目录),${version}
项目版本
需要自定义 groupId 、artifactId 及 version 的值
此时再次 mvn clean package 就可以将外部 jar 包引入到项目的 war 包中
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架