如何下载远程maven仓库的jar 手动放到本地仓库?
创始人
2024-06-03 08:06:08
0

文章目录

  • 如何下载远程maven仓库的jar 手动放到本地仓库?
    • 简单步骤描述:
    • 详细步骤描述:
    • 案例1:
    • 案例2:
  • 结语

如何下载远程maven仓库的jar 手动放到本地仓库?

在这里插入图片描述

在使用Maven构建Java项目时,通常会从中央仓库或其他远程仓库下载所需的依赖库。但是,有时候我们需要手动下载这些依赖库并将它们放到本地仓库,这里提供一个简单的步骤:

简单步骤描述:

可以按照以下步骤手动下载远程Maven仓库的JAR并将其放到本地仓库中:

  1. 打开Maven中央仓库网站:https://mvnrepository.com/
  2. 在搜索框中输入您想要下载的库的名称,然后按回车键搜索。
  3. 在搜索结果列表中找到您想要下载的库,并点击它的名称。
  4. 在该库的页面上找到“Files”部分,它会列出该库的不同版本及其可用的JAR文件。
  5. 在JAR文件列表中找到您需要的版本,然后点击该文件的下载链接,下载JAR文件到本地。
  6. 打开终端或命令行工具,切换到本地Maven仓库的目录。在大多数情况下,它位于用户主目录下的.m2文件夹中。
  7. 将下载的JAR文件复制到本地仓库的相应目录中。该目录的路径应为:<本地仓库目录>/<库的Group ID>/<库的Artifact ID>/<库的版本>/。例如,如果您要安装的JAR文件的组ID为“com.example”,Artifact ID为“my-library”,版本为“1.0.0”,并且JAR文件名为“my-library-1.0.0.jar”,则应该将文件复制到以下路径中:~/.m2/repository/com/example/my-library/1.0.0/my-library-1.0.0.jar
  8. 运行Maven命令,以确保JAR文件已成功安装到本地仓库。例如,您可以运行以下命令:mvn install:install-file -Dfile= -DgroupId=<库的Group ID> -DartifactId=<库的Artifact ID> -Dversion=<库的版本> -Dpackaging=jar。请将替换为您复制的JAR文件的路径,将<库的Group ID><库的Artifact ID><库的版本>替换为相应的值。

详细步骤描述:

  1. 在Maven中找到需要下载的库的Maven坐标,即groupId、artifactId和version。例如,我们要下载commons-lang3库,Maven坐标为:

     groupId: org.apache.commons
    artifactId: commons-lang3
    version: 3.12.0
    
  2. 在Maven仓库中找到相应的库,可以在Maven仓库网站中搜索或直接在仓库目录中查找。例如,Maven中央仓库的地址是:https://repo.maven.apache.org/maven2/

    以commons-lang3为例,在中央仓库中可以找到以下路径:org/apache/commons/commons-lang3/3.12.0/

  3. 下载需要的jar包,通常Maven库中的jar包有多个,其中包含了编译时的jar包和运行时的jar包,一般来说我们只需要下载包含jar包的目录下的jar文件即可。

  4. 将jar包手动添加到本地Maven仓库中,一般在本地仓库的路径下找到相应的目录,将jar文件复制到该目录下的对应文件夹中即可。例如,如果您使用的是默认的本地仓库路径,jar包应该放在$HOME/.m2/repository/org/apache/commons/commons-lang3/3.12.0/目录下。

  5. 运行Maven命令来更新本地仓库的索引,以便Maven能够找到手动添加的依赖库。可以使用以下命令更新本地仓库索引:

     
    mvn install:install-file -Dfile=path/to/your/jar/file -DgroupId=your.groupId -DartifactId=your.artifactId -Dversion=your.version -Dpackaging=jar
    

    其中,path/to/your/jar/file是您手动添加的jar文件的路径,your.groupId、your.artifactId和your.version是您手动添加的jar文件的Maven坐标中的groupId、artifactId和version。这条命令会将jar文件添加到本地仓库并更新索引。

  6. 现在您可以在Maven项目中使用手动添加的依赖库了,Maven会从本地仓库中获取依赖库而不是从远程仓库中下载。

注意:手动添加依赖库的操作可能会导致版本冲突和依赖问题,请在手动添加之前仔细检查版本和依赖关系,以避免问题的发生。

案例1:

手动下载并安装MySQL JDBC驱动程序到本地Maven仓库中。首先,您需要在Maven中央仓库网站搜索MySQL JDBC驱动程序,找到适当的版本并下载相应的JAR文件。以下是如何执行这些步骤的详细说明:

  1. 打开Maven中央仓库网站:https://mvnrepository.com/
  2. 在搜索框中输入“mysql jdbc”,然后按回车键搜索。
  3. 在搜索结果列表中找到适当的库,通常是以“mysql-connector-java”开头的库。找到最新版本,例如“8.0.28”,并点击它的名称。
  4. 在该库的页面上找到“Files”部分,它会列出该库的不同版本及其可用的JAR文件。
  5. 在JAR文件列表中找到您需要的版本,然后点击该文件的下载链接,下载JAR文件到本地。

现在,您已经下载了MySQL JDBC驱动程序的JAR文件。接下来,您需要将该文件安装到本地Maven仓库中。以下是如何执行这些步骤的详细说明:

  1. 打开终端或命令行工具,并切换到JAR文件所在的目录。

  2. 运行以下命令,将JAR文件安装到本地Maven仓库中:

     
    mvn install:install-file -Dfile=mysql-connector-java-8.0.28.jar -DgroupId=mysql -DartifactId=mysql-connector-java -Dversion=8.0.28 -Dpackaging=jar
    

    请注意,该命令中的选项的含义如下:

    • -Dfile:JAR文件的路径和名称。
    • -DgroupId:库的Group ID。
    • -DartifactId:库的Artifact ID。
    • -Dversion:库的版本号。
    • -Dpackaging:JAR文件的打包类型。在大多数情况下,它是“jar”。

    在上面的命令中,我们使用了MySQL的Group ID“mysql”,Artifact ID“mysql-connector-java”,版本号“8.0.28”,以及JAR文件名“mysql-connector-java-8.0.28.jar”。这些值可以根据您下载的JAR文件的实际名称和版本号进行调整。

  3. 运行完毕后,您应该会看到类似以下内容的输出:

     [INFO] Scanning for projects...
    [INFO] 
    [INFO] ---------< com.example:my-project >---------
    [INFO] Building My Project 1.0
    [INFO] -------------------------------------------
    [INFO] 
    [INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ my-project ---
    [INFO] Installing /path/to/mysql-connector-java-8.0.28.jar to
    

案例2:

下面是将Geotools的Shapefile模块(gt-shapefile)安装到本地Maven仓库的过程。

  1. 打开Maven中央仓库网站:https://mvnrepository.com/

  2. 在搜索框中输入“geotools”,然后按回车键搜索。

  3. 在搜索结果列表中找到适当的库,通常是以“org.geotools”开头的库。找到最新版本,例如“24.0”,并点击它的名称。

  4. 在该库的页面上找到“Dependency Information”部分,并复制以下内容:

    xmlCopy codeorg.geotoolsgt-shapefile24.0
    
    
  5. 打开终端或命令行工具,并切换到任意目录。

  6. 运行以下命令,将Geotools的Shapefile模块安装到本地Maven仓库中:

     mvn org.apache.maven.plugins:maven-install-plugin:2.5.2:install-file \-Dfile=/path/to/gt-shapefile-24.0.jar \-DgroupId=org.geotools \-DartifactId=gt-shapefile \-Dversion=24.0 \-Dpackaging=jar
    

    请注意,该命令中的选项的含义如下:

    • -Dfile:JAR文件的路径和名称。
    • -DgroupId:库的Group ID。
    • -DartifactId:库的Artifact ID。
    • -Dversion:库的版本号。
    • -Dpackaging:JAR文件的打包类型。在大多数情况下,它是“jar”。

    在上面的命令中,我们使用了Geotools的Group ID“org.geotools”,Artifact ID“gt-shapefile”,版本号“24.0”,以及JAR文件名“gt-shapefile-24.0.jar”。这些值可以根据您下载的JAR文件的实际名称和版本号进行调整。

  7. 运行完毕后,您应该会看到类似以下内容的输出:

    lessCopy code[INFO] Scanning for projects...
    [INFO] 
    [INFO] ---------< org.apache.maven.plugins:maven-install-plugin >---------
    [INFO] Building Maven Install Plugin 2.5.2
    [INFO] --------------------------------[ plugin ]---------------------------------
    [INFO] 
    [INFO] --- maven-install-plugin:2.5.2:install-file (default-cli) @ standalone-pom ---
    [INFO] Installing /path/to/gt-shapefile-24.0.jar to /path/to/.m2/repository/org/geotools/gt-shapefile/24.0/gt-shapefile-24.0.jar
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  1.516 s
    [INFO] Finished at: 2023-03-14T15:00:00+08:00
    [INFO] ------------------------------------------------------------------------
    
  8. 现在,您可以在Maven项目中添加"

    org.geotoolsgt-shapefile24.0
    
    

    在这里插入图片描述

总结: 具体根据自己的需求,随机应变,改变参数,解决实际问题~

结语

如果这篇文章对您有所帮助,或者有所启发的话,求一键三连:点赞、评论、收藏➕关注,您的支持是我坚持写作最大的动力。

相关内容

热门资讯

热点推荐“贝众乐游到底有没有透... 热点推荐“贝众乐游到底有没有透视挂吗”原来真的有挂是一款可以让一直输的玩家,快速成为一个“必胜”的a...
热点推荐“88娱乐城到底有没有... 热点推荐“88娱乐城到底有没有透视挂吗”原来真的有挂;原来确实真的有挂(需添加指定薇7198902获...
热点推荐“传奇德州到底有没有透... 您好,传奇德州这款游戏可以开挂的,确实是有挂的,需要了解加微{7198902}很多玩家在这款游戏中打...
热点推荐“精品乐清麻将到底有没... 热点推荐“精品乐清麻将到底有没有透视挂吗”原来真的有挂是一款可以让一直输的玩家,快速成为一个“必胜”...
热点推荐“湘叶娱乐到底有没有透... 热点推荐“湘叶娱乐到底有没有透视挂吗”原来真的有挂1、让任何用户在无需AI插件第三方神器的情况下就能...
热点推荐“新友茶社到底有没有透... 您好,新友茶社这款游戏可以开挂的,确实是有挂的,需要了解加微{7198902}很多玩家在这款游戏中打...
热点推荐“网上斗牛到底有没有透... 亲,网上斗牛这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,网上斗牛的开挂软件,名...
热点推荐“雀悦诏安麻将到底有没... 雀悦诏安麻将这个游戏其实有挂的,确实是有挂的,需要了解加客服微信:【7198902】, 很多玩家在这...
热点推荐“棋牌室到底有没有透视... 您好:棋牌室确实真的有挂,软件加微信【7198902】确实是有挂的,很多玩家在这款游戏中打牌都会发现...
热点推荐“微友联盟到底有没有透... 亲,微友联盟这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,微友联盟的开挂软件,名...
热点推荐“众联到底有没有透视挂... 热点推荐“众联到底有没有透视挂吗”原来真的有挂1、让任何用户在无需AI插件第三方神器的情况下就能够完...
热点推荐“雀神麻将到底有没有透... 热点推荐“雀神麻将到底有没有透视挂吗”原来真的有挂是一款可以让一直输的玩家,快速成为一个“必胜”的a...
热点推荐“越记乡游到底有没有透... 热点推荐“越记乡游到底有没有透视挂吗”原来真的有挂;原来确实真的有挂(需添加指定薇7198902获取...
热点推荐“麻友圈2贵州麻将到底... 您好:麻友圈2贵州麻将确实真的有挂,软件加微信【7198902】确实是有挂的,很多玩家在这款游戏中打...
热点推荐“乐天棋牌到底有没有透... 热点推荐“乐天棋牌到底有没有透视挂吗”原来真的有挂是一款可以让一直输的玩家,快速成为一个“必胜”的a...
热点推荐“海星到底有没有透视挂... 您好:海星确实真的有挂,软件加微信【7198902】确实是有挂的,很多玩家在这款游戏中打牌都会发现很...
热点推荐“潮汕馆到底有没有透视... 您好:潮汕馆确实真的有挂,软件加微信【7198902】确实是有挂的,很多玩家在这款游戏中打牌都会发现...
热点推荐“乐享贵州麻将到底有没... 乐享贵州麻将这个游戏其实有挂的,确实是有挂的,需要了解加客服微信:【7198902】, 很多玩家在这...
热点推荐“汇友娱乐到底有没有透... 您好:汇友娱乐确实真的有挂,软件加微信【7198902】确实是有挂的,很多玩家在这款游戏中打牌都会发...
热点推荐“hhpoker脚本到... 热点推荐“hhpoker脚本到底有没有透视挂吗”原来真的有挂1、让任何用户在无需AI插件第三方神器的...