Spring Boot引入外部jar包并打包

GitHub:SpringBootDemo
Gitee:SpringBootDemo
微信公众号:在这里插入图片描述

0 开发环境

  • JDK:1.8
  • Spring Boot:2.7.18

1 放置jar

将需要引入的jar放置到项目中

在这里插入图片描述

2 引入依赖

<!-- groupId artifactId version 可以随便写 -->
<!-- scope 配置为system表示此依赖是外部jar,非Maven仓库 -->
<!-- scope 配置为system时,systemPath生效,systemPath为外部jar路径 -->
<!-- ${project.basedir} 表示当前模块根目录。-->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.83</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/lib/fastjson-1.2.83.jar</systemPath>
</dependency>

3 测试

新建 application.yml和Spring Boot启动类

3.1 新建测试类

@RestController
public class LoginController {

    @GetMapping(value = "login")
    public String login() {
        JSONObject params = new JSONObject();
        params.put("username", "test");

        return params.toString();
    }
}

3.2 测试

浏览器访问127.0.0.1:8090/login,返回结果如下

在这里插入图片描述

测试通过,项目已经成功引入外部jar,并可使用其中的方法。

但这仅仅是引入到项目中,打包的时候不会将该外部jar打包到spring boot的jar/war包中。还需如下配置

4 配置打包规则

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <!-- 包含systemPath指定的依赖 -->
                <includeSystemScope>true</includeSystemScope>
            </configuration>
        </plugin>
    </plugins>
</build>

5 测试

maven打包,使用压缩方式打开jar包,BOOT-INF\lib目录下包含systemPath指定的依赖

在这里插入图片描述

使用脚本启动服务,启动成功

java -jar spring-boot-jar-1.0.0.jar

在这里插入图片描述

浏览器访问127.0.0.1:8090/login,返回结果如下

在这里插入图片描述

测试通过,项目已经成功打包

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值