maven引入本地jar,部署到服务器上找不到

前言

java项目中引入了一些外部的jar包. 在本地idea中打包可以运行, 部署到服务器中, 报找不到依赖包.

解决方式

  • 自定义目录,这里在project的根目录新建lib文件夹,将jar放进去
  • pom.xml中引入
java 复制代码
<dependency>
          <groupId>自定义</groupId>
          <artifactId>自定义</artifactId>
          <version>自定义</version>
          <scope>system</scope>
          <!--systemPath:jar包的路径(idea编写的时候会有提示的)-->
          <systemPath>${project.basedir}/lib/taobao-sdk-java.jar</systemPath>
</dependency>

通过上述方式,在开发环境没有什么问题,不会存在什么包找不到等情况

  • 处理打包
java 复制代码
<build>
   <resources>
    <resource>
      <directory>lib</directory>
      <targetPath>/BOOT-INF/lib/</targetPath>
      <includes>
        <include>**/*.jar</include>
      </includes>
    </resource>
   </resources>
 </build>

directory :指定lib文件夹的位置,由于是相对工程根目录,所以直接写上lib即可
targetPath :打包到的文件夹位置,写上BOOT-INF/lib即可,或者是WEB-INF/lib。【斜杠(/)加不加都行,如果是mac的话写./】
includes:一般都是以jar结尾,就写**/*.jar

这样就解决啦 mvn package即可。

相关推荐
曹牧33 分钟前
JSON 数组的正确使用方式
java·服务器·前端
石头猫灯38 分钟前
DNS 服务器配置实验
运维·服务器
民乐团扒谱机1 小时前
【读论文】Frequency Comb Based Optical Time Transfer基于光频梳的光时间传递
运维·服务器
UP_Continue1 小时前
Linux--日志的模拟实现
linux·运维·服务器
东北甜妹1 小时前
playbook
linux·服务器·网络
我爱学习好爱好爱1 小时前
Ansible 入门:ad-hoc 临时命令与常用模块
linux·服务器·ansible
lwx9148522 小时前
Linux-sftp命令详解
linux·运维·服务器
珠海西格2 小时前
四可装置如何监测组件衰减与逆变器效率?
大数据·运维·服务器·分布式·能源
Zacks_xdc2 小时前
【全栈】云服务器安装 MySQL + Next.js 连接完整 Demo
服务器·javascript·mysql·阿里云·nextjs·云服务器
ChaseDreamRunner2 小时前
如何用 NSSM 把 Jar 做成 Windows 服务
java·windows·jar