一键搞定!用Maven命令把本地JAR包装进Maven仓库

发布时间:2024年01月18日


1.概要

咱们在实际项目开发中,有几种场景可能需要将本地的JAR包安装到本地仓库中:

  • 自定义或第三方库不在公共仓库中: 当你使用一些自定义的或者第三方的库,而这些库没有被上传到中央仓库或其他公共仓库时,你可能需要将这些库手动安装到你的本地仓库。这种情况通常在你无法通过Maven或其他构建工具直接获取这些库时发生。
  • 使用未发布的SNAPSHOT版本: 如果你在开发中使用了一个尚未发布的SNAPSHOT版本的库,该库的最新版本可能无法通过公共仓库直接获取。在这种情况下,你可能需要手动将这个SNAPSHOT版本安装到本地仓库,以便你的项目可以引用到最新的修改。
  • 本地项目间依赖: 在一些复杂的项目结构中,可能存在多个模块或项目相互依赖的情况。如果其中一个模块的输出需要被其他模块引用,你可能需要将其安装到本地仓库,以便其他模块可以引用它。
  • 对第三方库进行修改或定制: 在某些情况下,你可能需要对某个第三方库进行修改或者添加一些自定义功能,然后将修改后的版本安装到本地仓库,以便在项目中引用这个定制过的版本。

2.安装方法

假如我们要使用到如下依赖jar,但是远程仓库里没有此依赖包,我们需要将本地的jar安装到本地仓库

        <dependency>
            <groupId>com.sun.jdmk</groupId>
            <artifactId>jmxtools</artifactId>
            <version>1.2.1</version>
        </dependency>

2.1 执行mvn install:install-file命令

mvn install:install-file -Dfile=/Users/apple/Downloads/jmxtools-1.2.1.jar -DgroupId=com.sun.jdmk -DartifactId=jmxtools -Dversion=1.2.1 -Dpackaging=jar

输出

aoole@appledeMacBook-Pro idea % mvn install:install-file -Dfile=/Users/apple/Downloads/jmxtools-1.2.1.jar -DgroupId=com.sun.jdmk -DartifactId=jmxtools -Dversion=1.2.1 -Dpackaging=jar
[INFO] Scanning for projects...
[INFO] 
[INFO] ------------------< org.apache.maven:standalone-pom >-------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] --------------------------------[ pom ]---------------------------------
[INFO] 
[INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ standalone-pom ---
[INFO] Installing /Users/apple/Downloads/jmxtools-1.2.1.jar to /Users/apple/.m2/repository/com/sun/jdmk/jmxtools/1.2.1/jmxtools-1.2.1.jar
[INFO] Installing /var/folders/g0/zwqb12b9569_p9vjsyr04nwr0000gn/T/mvninstall5692980952196927959.pom to /Users/apple/.m2/repository/com/sun/jdmk/jmxtools/1.2.1/jmxtools-1.2.1.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.153 s
[INFO] Finished at: 2024-01-05T22:20:44+08:00
[INFO] ------------------------------------------------------------------------

2.2 查看本地仓库,jar文件已被安装到仓库中

rep

2.3 项目中通过pom引用安装到本地仓库中的jar

项目中可以通过如下pom引用安装到本地仓库中的jar了

   <dependency>
            <groupId>com.sun.jdmk</groupId>
            <artifactId>jmxtools</artifactId>
            <version>1.2.1</version>
        </dependency>

3.命令参数含义说明

mvn install:install-file -Dfile=/Users/apple/Downloads/jmxtools-1.2.1.jar -DgroupId=com.sun.jdmk -DartifactId=jmxtools -Dversion=1.2.1 -Dpackaging=jar

具体参数的含义如下:

-Dfile: 指定要安装的JAR文件的路径。
-DgroupId: 指定项目的groupId。
-DartifactId: 指定项目的artifactId。
-Dversion: 指定项目的版本号。
-Dpackaging: 指定打包类型,通常为"jar"
文章来源:https://blog.csdn.net/wcwmsj/article/details/135669095
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。