spring boot实战之本地jar包引用示例

作者:思与学 时间:2021-11-01 20:44:45 

部分情况下无法通过maven仓库直接下载需要的jar包,只能讲jar包下载至本地来使用,spring boot框架内通过maven加载第三方jar包可以通过以下方式来实现(本地jar放在lib/目录下),项目会打包为jar包来运行。

1、添加maven依赖


<dependency>
<groupId>org.ansj</groupId>
<artifactId>ansj_seg</artifactId>
<version>3.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/ansj_seg-3.0.jar</systemPath>
</dependency>
  • scope system指明是本地jar包

  • systemPath指明本地jar包路径

经过以上配置,在eclipse内已可正常运行,但编译为jar包时会提示找不到相关的类,需要进行以下配置。

2、调整plugin参数


<plugins>
<plugin>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-maven-plugin</artifactId>
</plugin>

<plugin>
 <groupId>org.apache.maven.plugins</groupId>
 <artifactId>maven-compiler-plugin</artifactId>
 <configuration>
  <source>1.7</source>
  <target>1.7</target>
  <compilerArguments>
   <extdirs>${project.basedir}/lib</extdirs>
  </compilerArguments>
 </configuration>
</plugin>
</plugins>

重点是compilerArguments内的extdirs配置

3、调整resources配置


<resources>
<resource>
<directory>lib</directory>
<targetPath>BOOT-INF/lib/</targetPath>
<includes>
<include>*/.jar</include>
</includes>
</resource>

<resource>
 <directory>${project.basedir}/src/main/resources</directory>
 <targetPath>BOOT-INF/classes/</targetPath>
</resource>
</resources>

  • directory lib配置的作用是指定lib目录下的jar包作为资源文件,在打包时一起copy至classes是目录下

  • directory src/main/resources配置的作用是指明正常的java资源文件,不配置会被忽视

打包后的文件格式大概为:


BOOT-INF
-- lib
 -- ansj_seg-3.0.jar
-- classess
 -- application.properties

来源:http://www.jianshu.com/p/eb912edceecd?utm_source=tuicool&utm_medium=referral

标签:spring,boot,引用,jar
0
投稿

猜你喜欢

  • java处理数据库不支持的emoji表情符问题解决

    2021-08-21 00:16:58
  • springboot自定义stater启动流程

    2023-06-07 06:33:45
  • Springboot 内部服务调用方式

    2023-08-24 00:32:20
  • Java ArrayList中存放引用数据类型的方式

    2023-11-16 15:23:46
  • JavaMail实现带附件的邮件发送

    2021-10-21 15:00:09
  • Java VisualVM监控远程JVM(详解)

    2022-07-10 15:59:15
  • Java使用新浪微博API通过账号密码方式登陆微博的实例

    2023-09-23 05:35:38
  • Java数组与堆栈相关知识总结

    2023-11-12 06:12:18
  • JavaScript 与 Java 区别介绍 学java怎么样

    2023-11-25 12:23:49
  • Flutter路由传递参数及解析实现

    2023-06-22 11:48:45
  • JavaMap两种遍历方式keySet与entrySet详解

    2022-04-17 14:36:29
  • Java语言求解完美数代码分析

    2023-01-28 10:17:58
  • springBoot加入thymeleaf模板的方式

    2023-11-25 14:31:23
  • Spark网站日志过滤分析实例讲解

    2021-06-08 12:59:24
  • 优化MyBatis配置文件中的配置详解

    2023-11-10 14:03:51
  • Kafka Producer中的消息缓存模型图解详解

    2022-05-03 06:00:13
  • SpringBoot项目速度提升之延迟初始化(Lazy Initialization)详解

    2021-11-27 06:37:22
  • java写入文件的几种方法分享

    2023-06-26 15:56:55
  • java中lambda表达式简单用例

    2023-11-24 23:17:52
  • Spring Security 控制授权的方法

    2023-08-06 19:21:08
  • asp之家 软件编程 m.aspxhome.com