spring boot项目打包后依赖丢失
spring boot项目本地可以运行,打包之后运行jar包缺少驱动依赖。
原因是jar包是从外部下载到本地再导入进来,打包时没有一起打包进来。
百度试了几个方案,最后是用下面这个方案解决的:
1.在根目录下新建libs文件夹,将需要的jar放进去。
2.在pom中加入以下配置,导入本地jar。
<dependency> <groupId>com.baidu</groupId> <artifactId>progress</artifactId> <version>12.0</version> <scope>system</scope> <systemPath>${project.basedir}/libs/progress.jar</systemPath> </dependency> <dependency> <groupId>com.baidu</groupId> <artifactId>openedge</artifactId> <version>12.0</version> <scope>system</scope> <systemPath>${project.basedir}/libs/openedge.jar</systemPath> </dependency>
systemPath是引入本地jar包的位置,这个最重要。
3. 加上includeSystemScope参数,在pom的spring boot打包插件中。
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<includeSystemScope>true</includeSystemScope>
</configuration>
</plugin>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构