springboot将本地jar包和项目一起打成war包部署在服务器

问题

在开发过程中,很多人可能都遇到过这种问题,就是springboot在使用pom.xml 文件管理依赖的时候,有些依赖是加不进去的,那怎么用呢?

##解决方案

解决方案有两种

第一种

将下载的第三方jar包安装在本地maven库,其他项目需要引用时不需要再次安装。但是这样做是不利于协同开发的,比如一个开发者在本地装了这个jar包,另外一位开发者通过git将代码下载之后,由于本地没有安装该jar包,就会报错。

第二种

将下载的jar包放在项目目录中,这种方法就解决了第一种方法的尴尬。但是需要在pom文件中做一些配置。

第一种方式在这里就不展开说了

第二种方式

1、在本地项目目录中建一个目录专门来放jar文件,位置可根据需求设置,如项目根目录下建一个lib目录,并将本地jar包放入lib目录下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传在这里插入图片描述

2、在pom中加入以下配置

		<dependency>
            <groupId>com.heng.util</groupId>
            <artifactId>com.heng.util</artifactId>
            <version>1.0</version>
            <scope>system</scope>
            <systemPath>${
   project.basedir}/lib/kaptcha-2.3.2.jar</systemPath>
        </dependency>

project.basedir是项目路径

这样做完之后,在本地是可以使用这个jar包了,但是在将项目打成jar包时,却没有将该jar包打入需要在pom加入以下配置

			<plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <includeSystemScope>true</includeSystemScope>
                </configuration>
           	 </plugin>

这样在打成的jar包中就有该jar包。

但是在打war包时,却没有将该jar包打入,就导致在将打包后的war包部署到Tomcat服务器时出现了问题

24-Jul-2020 15:23:07.230 信息 [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-apr-8080"]
24-Jul-2020 15:23:07.230 信息 [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-apr-8009"]
24-Jul-2020 15:23:07.246 信息 [main] org.apache
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值