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

 更新时间:2017年10月18日 09:06:36   作者:思与学  
本篇文章主要介绍了spring boot实战之本地jar包引用示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

部分情况下无法通过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

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

相关文章

  • 关于Nacos单机启动的两种方式

    关于Nacos单机启动的两种方式

    这篇文章主要介绍了关于Nacos单机启动的两种方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • shiro之记住登录信息

    shiro之记住登录信息

    Shiro提供了记住我(RememberMe)的功能,当关闭浏览器时下次再次打开还能记住你的信息,下面小编给大家分享shiro之记住登录信息的相关知识,感兴趣的朋友一起看看吧
    2017-09-09
  • java实现基于UDP协议网络Socket编程(C/S通信)

    java实现基于UDP协议网络Socket编程(C/S通信)

    这篇文章主要介绍了java实现基于UDP协议网络Socket编程(C/S通信),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • Spring boot easyexcel 实现复合数据导出、按模块导出功能

    Spring boot easyexcel 实现复合数据导出、按模块导出功能

    这篇文章主要介绍了Spring boot easyexcel 实现复合数据导出、按模块导出,实现思路流程是准备一个导出基础填充模板,默认填充key,本文给大家介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • Spring整合Kaptcha谷歌验证码工具的开发步骤

    Spring整合Kaptcha谷歌验证码工具的开发步骤

    这篇文章主要介绍了Spring整合Kaptcha谷歌验证码工具的开发步骤,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • play for scala 实现SessionFilter 过滤未登录用户跳转到登录页面

    play for scala 实现SessionFilter 过滤未登录用户跳转到登录页面

    这篇文章主要介绍了play for scala 实现SessionFilter 过滤未登录用户跳转到登录页面的相关资料,需要的朋友可以参考下
    2016-11-11
  • SpringBoot常用注解详细整理

    SpringBoot常用注解详细整理

    大家好,本篇文章主要讲的是SpringBoot常用注解详细整理,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • java Hibernate延迟加载

    java Hibernate延迟加载

    对one-to-one 关系进行延迟加载和其他关系相比稍微有些不同。many-to-one 的延迟加载是在配置文件的class 标签
    2008-10-10
  • idea启动报错:Command line is too long问题

    idea启动报错:Command line is too long问题

    在使用IDEA时,若遇到"Commandlineistoolong"错误,通常是因为命令行长度超限,这是因为IDEA通过命令行或文件将classpath传递至JVM,操作系统对命令行长度有限制,解决方法是切换至动态类路径,通过修改项目的workspace.xml文件
    2024-09-09
  • Java的最大栈深度与JVM核心知识介绍

    Java的最大栈深度与JVM核心知识介绍

    这篇文章主要有两个部分,一部分介绍JAVA的最大栈深度,第二部分介绍了JVM核心知识,需要的朋友可以参考下面文章的具体内容
    2021-09-09

最新评论