服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - 详解spring boot引入外部jar包的坑

详解spring boot引入外部jar包的坑

2021-03-04 09:55朱亮 Java教程

本篇文章主要介绍了spring boot引入外部jar的坑,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

前言:由于项目需求,短信验证码的接口需要换成阿里大于的,但是尴尬的发现阿里大于的jar包没有maven版本的,于是便开始了一上午的操蛋引包之路。按照套路来说,自然应该是百度一波,但是百度了好久,找了好多方案之后发现,没一个有用的,而且文章的抄袭、拷贝十分严重,试了n种方案,都是错的,都没有将外部jar包打包到book-inf文件夹下。最终,在第n次尝试之后,终于在打的jar包里将外部的jar包导入进来。特此记录下,防止再犯!!!

首先在新建libs文件夹(根目录或者resource目录下都可以),将需要引入的jar放进去

详解spring boot引入外部jar包的坑

然后再pom中加入如下配置,告诉maven导入本地jar

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<dependency>
    <groupid>com.aliyun</groupid>
    <artifactid>aliyun-java-sdk-core</artifactid>
    <version>3.2.2</version>
    <scope>system</scope>
    <systempath>${project.basedir}/libs/aliyun-java-sdk-core-3.3.1.jar</systempath>
  </dependency>
  <dependency>
    <groupid>com.aliyun</groupid>
    <artifactid>aliyun-java-sdk-dysmsapi</artifactid>
    <version>1.0.0</version>
    <scope>system</scope>
    <systempath>${project.basedir}/libs/aliyun-java-sdk-dysmsapi-1.0.0.jar</systempath>
  </dependency>

其中除了systempath配置告诉maven引入的本地jar包的位置之外,其他的配置都可以随便写

划重点!!!敲黑板!!!下面的一步配置也是最重要的一步,网上很多的教程缺了这样一步之后就会导致虽然本地可以运行,但是只要使用maven打包就不行,因为maven没有将本地的jar也打到生成的包中

在pom中给spring boot的打包插件设置一下includesystemscope参数即可

?
1
2
3
4
5
6
7
8
9
10
11
<build>
  <plugins>
    <plugin>
      <groupid>org.springframework.boot</groupid>
      <artifactid>spring-boot-maven-plugin</artifactid>
      <configuration>
        <includesystemscope>true</includesystemscope>
      </configuration>
    </plugin>
  </plugins>
</build>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://juejin.im/post/5a2f48896fb9a0450a674f15

延伸 · 阅读

精彩推荐