spring boot打包本地idea跑能行,上线jar包跑不行 解决

在用spring boot 做项目开发的时候,都是直接从mavn仓库中拉取jar值不会遇到现有问题的。最近在做项目的时候由于用到了第三的jar包时候,用spring boot打包遇到的问题。

开发工具idea

1: 将项目打包成 可执行的jar文件

    按照以前整合项目的套路,直接将第三种的jar添加项目lib中即可。我也是这么做的,在项目中新建lib文件夹,将第三放的jar copy进去。

2:依然dependency标签引入第三种jar,写法如下

scopre 写成system , systemPath : 指向jar所在的位置。 不要按照以前的套路,在libraries中添加进来了。

3: 按照上述步骤,ide开发部署是没有问题的。但是打包mvn clean package,第三方的jar,还是未能打进去,运行项目就会提示缺少jar文件。

4:在spring-boot-maven-plugin中configuration下的includeSystemScope属性指定为true即可了。

    goal-repackage属性为true,因为项目是多模块的,不然打包后文件不能将依赖文件打包进去。

经过以上折腾,不管是ide开发部署,还是打包都没问题了。

====================分割线==========================

第二种情况,将项目打包成war包呢,能正常工作吗? 答案是:不行,是不是很桑心啊,,,哈哈哈哈哈

将项目打包成war包部署

1:首先修改项目的pom文件,打包类型jar=》war

2: 按照spring boot的官方文档,说只需要添加2中的依赖(scope是provided)。 其他网友也说要在web排除tomcat的依赖,并添加上tomcat-servlet-apide 依赖,以防万一加上吧,谁知道会出现什么事情呢。

3:打war包的时候,有时候会提示说没web.xml文件,加上下面的话明确告诉 没web.xml

4: 重点来了  设置maven-war-plugins插件,否则外部依赖无法打进war包

这样不管是可运行的jar , 还是war 都ok了

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值