`

Maven项目中使用本地JAR包

 
阅读更多

在Maven项目中使用本地JAR包有两种方法:

1. 使用system scope

复制代码
  <dependencies>
    <dependency>
      <groupId>org.richard</groupId>
      <artifactId>my-jar</artifactId>
      <version>1.0</version>
      <scope>system</scope>
      <systemPath>${project.basedir}/lib/my-jar.jar</systemPath>
    </dependency>
  </dependencies>
复制代码

system scope引入的包,在使用jar-with-dependencies打包时将不会被包含,可以使用resources将本地包打进jar-with-dependencies

复制代码
<build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-shade-plugin</artifactId>
        <executions>
          <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
              <goal>shade</goal>
            </goals>
            <configuration>
              <descriptorRefs>
                <descriptorRef>jar-with-dependencies</descriptorRef>
              </descriptorRefs>
              <finalName>xxx-jar-with-dependencies</finalName>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
     <resources>
      <resource>
        <targetPath>lib/</targetPath>
        <directory>lib/</directory>
        <includes>
          <include>**/my-jar.jar</include>
        </includes>
      </resource>
    </resources>
  </build>
复制代码

生成的xxx-jar-with-dependencies.jar中,将会包含lib目录以及my-jar.jar,并且能够被在执行的时候被找到。

有的时候这种方法会实效,比如JDBCDriver在声明的时候Class.forName("xxx.Driver")就会说找不到类,用下面两种方法就可以。

2. 将jar包安装到本地repository中

mvn install:install-file -Dfile=my-jar.jar -DgroupId=org.richard -DartifactId=my-jar -Dversion=1.0 -Dpackaging=jar

 3. 添加 in project repository,在新机器上执行时就不用运行mvn install:install-file命令了

复制代码
<repository>
    <id>in-project</id>
    <name>In Project Repo</name>
    <url>file://${project.basedir}/lib</url>
</repository>

<dependency>
    <groupId>org.richard</groupId>
    <artifactId>my-jar</artifactId>
    <version>1.0</version>
</dependency>
复制代码

你的jar包及路径必须严格遵循格式:

/groupId/artifactId/version/artifactId-verion.jar

本例中: lib/org/richard/my-jar/1.0/my-jar-1.0.jar

分享到:
评论

相关推荐

    Maven引入本地Jar包并打包进War包中的方法

    在实际开发中,我们经常需要引入本地Jar包以满足项目的需求。本文将介绍Maven引入本地Jar包并打包进War包中的方法。 概述 在平时的开发中,有一些Jar包因为种种原因,在Maven的中央仓库中没有收录,所以就要使用...

    Springboot 打Jar包,Maven完美解决本地Jar包自动打入Springboot Jar包中

    安装完本地Jar包后,还需要更新Maven项目以确保可以正确引用该依赖。 **步骤一:打开Maven项目** - 使用IDE(如IntelliJ IDEA或Eclipse)打开Maven项目。 **步骤二:更新项目依赖** - 在项目上右键点击,选择`...

    如何在IDEA Maven项目中导入本地jar包的步骤

    现在,你的Maven项目就可以使用刚刚导入的本地jar包了。 总结一下,通过上述步骤,我们完成了IDEA Maven项目中导入本地jar包的过程。这不仅适用于开发过程中需要的自定义库,也适用于那些不通过公共Maven仓库发布的...

    maven本地仓库(常用Jar包)

    每次你在Maven项目中引入一个新的库,Maven都会首先在本地仓库中查找该库。如果找不到,它会去中央仓库下载。一旦下载到本地仓库,这个库就会被缓存起来,下次再用到时,Maven就不再需要重新下载,从而提高了构建...

    maven批量导入第三方jar包至本地库工具

    总之,"maven批量导入第三方jar包至本地库工具"是一个实用的辅助工具,它简化了将非Maven化的第三方库集成到Maven项目中的过程,提高了开发效率。但使用时也要注意合理管理和更新这些自定义的依赖,以保持项目的整洁...

    maven的本地仓库jar包

    描述中提到的“maven的本地仓库jar包”可能是指一个包含各种常用库的压缩文件,供那些无法直接访问中央仓库的开发者使用。这样的资源集合可以帮助开发者快速建立本地仓库,避免因网络问题或权限限制而无法下载所需库...

    maven本地仓库清除无效jar包脚本

    当我们在项目中引入POM依赖时,Maven会自动从远程仓库下载对应的jar包到本地仓库,以便于项目的构建和运行。然而,有时由于网络问题、仓库服务器故障或者缓存问题,可能会导致jar包下载不完整或者出现错误,从而影响...

    maven依赖本地jar包

    然而,在某些情况下,我们可能需要在Maven项目中使用那些未被部署到远程仓库(如Maven Central或Nexus)的本地JAR包。这种需求在开发过程中并不少见,比如在处理企业内部的私有库或是测试某个尚未发布的第三方库时。...

    一键清除maven仓库中下载失败的jar包的实现方法

    在Maven项目中,下载失败的jar包是一个常见的问题,它们会占用磁盘空间,影响开发效率和心情。因此,清除这些下载失败的jar包变得非常重要。本文将详细介绍如何使用批量删除maven下载失败的jar包的方法。 首先,...

    maven批量导入jar包到本地仓库

    在使用过程中,你只需要提供待导入的JAR包列表,工具就会将它们一一添加到Maven的本地仓库,并且自动生成对应的`dependency`配置,这样在项目中就可以直接引用这些JAR包了。 例如,压缩包中的`dom4j-1.6.1.jar`是一...

    maven打包 maven打jar包详细步骤

    本文将详细讲解如何使用Maven来打包一个Java项目,并创建JAR文件。 首先,Maven有三个主要生命周期阶段:`clean`、`default`(也称为`compile`)和`install`。每个阶段包含一系列的阶段(或者称为目标,如`compile`...

    mavenjar包

    描述中提到的步骤,是在本地环境中设置和使用 Maven 构建的 JAR 包。首先,你需要下载一个包含 Maven 构建的 JAR 文件的压缩包,并将其解压缩。解压后,找到具体的 JAR 文件,这个文件名可能是根据项目的artifactId...

    将jar包添加到本地maven仓库

    现在,你可以在其他Maven项目中通过以下方式引用这个本地添加的jar包: ```xml &lt;groupId&gt;com.yourcompany&lt;/groupId&gt; &lt;artifactId&gt;your-jar-name &lt;version&gt;1.0.0 ``` 至此,你已经成功地将jar包添加到了本地...

    详解IDEA使用Maven项目不能加入本地Jar包的解决方法

    本文将详细介绍如何解决IDEA中Maven项目无法加入本地Jar包的问题。 首先,当遇到IDEA提示找不到特定的Maven依赖,例如ojdbc8,通常是因为Maven仓库中的链接失效或版本不匹配。例如,ojdbc8的依赖在指定URL已经无法...

    详解如何将本地JAR包添加到本地Maven仓库中

    要将本地JAR包添加到本地Maven仓库,首先需要确保你已经安装了Maven,并且Maven环境变量配置正确,这样才能在命令行中使用Maven命令。 具体操作步骤如下: 1. 首先,你需要下载或者获取到需要添加的JAR包。在上述...

    阿里云maven私服jar包上传和拉取教程

    - 运行`mvn dependency:resolve`或`mvn install`命令,Maven会自动从私服仓库中拉取所需的jar包,并将其安装到本地仓库中供项目使用。 综上所述,通过上述步骤,你可以轻松地在阿里云环境中搭建一个maven私服,并...

Global site tag (gtag.js) - Google Analytics