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

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

如何下载远程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文件名>。例如,如果您要安装的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=<JAR文件路径> -DgroupId=<库的Group ID> -DartifactId=<库的Artifact ID> -Dversion=<库的版本> -Dpackaging=jar。请将<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
  1. 在Maven仓库中找到相应的库,可以在Maven仓库网站中搜索或直接在仓库目录中查找。例如,Maven中央仓库的地址是:https://repo.maven.apache.org/maven2/
    以commons-lang3为例,在中央仓库中可以找到以下路径:org/apache/commons/commons-lang3/3.12.0/
  2. 下载需要的jar包,通常Maven库中的jar包有多个,其中包含了编译时的jar包和运行时的jar包,一般来说我们只需要下载包含jar包的目录下的jar文件即可。
  3. 将jar包手动添加到本地Maven仓库中,一般在本地仓库的路径下找到相应的目录,将jar文件复制到该目录下的对应文件夹中即可。例如,如果您使用的是默认的本地仓库路径,jar包应该放在$HOME/.m2/repository/org/apache/commons/commons-lang3/3.12.0/目录下。
  4. 运行Maven命令来更新本地仓库的索引,以便Maven能够找到手动添加的依赖库。可以使用以下命令更新本地仓库索引:
mvn install:install-file -Dfile=path/to/your/jar/file -DgroupId=your.groupId -DartifactId=your.artifactId -Dversion=your.version -Dpackaging=jar
  1. 其中,path/to/your/jar/file是您手动添加的jar文件的路径,your.groupId、your.artifactId和your.version是您手动添加的jar文件的Maven坐标中的groupId、artifactId和version。这条命令会将jar文件添加到本地仓库并更新索引。
  2. 现在您可以在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
  1. 请注意,该命令中的选项的含义如下:
  • -Dfile:JAR文件的路径和名称。
  • -DgroupId:库的Group ID。
  • -DartifactId:库的Artifact ID。
  • -Dversion:库的版本号。
  • -Dpackaging:JAR文件的打包类型。在大多数情况下,它是“jar”。
  1. 在上面的命令中,我们使用了MySQL的Group ID“mysql”,Artifact ID“mysql-connector-java”,版本号“8.0.28”,以及JAR文件名“mysql-connector-java-8.0.28.jar”。这些值可以根据您下载的JAR文件的实际名称和版本号进行调整。
  2. 运行完毕后,您应该会看到类似以下内容的输出:
[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 code<dependency>
  <groupId>org.geotools</groupId>
  <artifactId>gt-shapefile</artifactId>
  <version>24.0</version>
</dependency>
  1. 打开终端或命令行工具,并切换到任意目录。
  2. 运行以下命令,将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
  1. 请注意,该命令中的选项的含义如下:
  • -Dfile:JAR文件的路径和名称。
  • -DgroupId:库的Group ID。
  • -DartifactId:库的Artifact ID。
  • -Dversion:库的版本号。
  • -Dpackaging:JAR文件的打包类型。在大多数情况下,它是“jar”。
  1. 在上面的命令中,我们使用了Geotools的Group ID“org.geotools”,Artifact ID“gt-shapefile”,版本号“24.0”,以及JAR文件名“gt-shapefile-24.0.jar”。这些值可以根据您下载的JAR文件的实际名称和版本号进行调整。
  2. 运行完毕后,您应该会看到类似以下内容的输出:
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] ------------------------------------------------------------------------
  1. 现在,您可以在Maven项目中添加"
<dependency>
    <groupId>org.geotools</groupId>
    <artifactId>gt-shapefile</artifactId>
    <version>24.0</version>
</dependency>

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

结语

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


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
目录
相关文章
|
敏捷开发 Java 测试技术
阿里云云效产品使用合集之如何下载流水线构建过程中生成的jar
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
存储 Java Maven
Maven系统级别依赖:解决部署时Jar包缺失问题
以上就是关于Maven系统级别依赖解决部署时Jar包缺失问题的解答,希望对你有所帮助。在软件开发中,遇到问题并解决问题是常态,希望你能够善用这些工具,解决你遇到的问题。
860 28
|
Java Maven 容器
java依赖冲突解决问题之Maven在编译打包过程中对依赖的jar包如何解决
java依赖冲突解决问题之Maven在编译打包过程中对依赖的jar包如何解决
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
2951 3
|
Java Maven 容器
Maven使用IDEA自带工具打包,同时将lib下的jar包打入,双击jar包可直接运行
使用IntelliJ IDEA的Artifacts功能,可以将项目依赖的第三方jar包打包进jar文件中,实现双击jar包即可直接运行。
Maven使用IDEA自带工具打包,同时将lib下的jar包打入,双击jar包可直接运行
|
Java jenkins 持续交付
Centos7下docker的jenkins下载并配置jdk与maven
通过上述步骤,您将成功在CentOS 7上的Docker容器中部署了Jenkins,并配置好了JDK与Maven,为持续集成和自动化构建打下了坚实基础。
1413 1
|
安全 Java Maven
优化Maven镜像配置:使用阿里云加速依赖下载
更新Maven镜像配置至关重要,尤其使用阿里云仓库时。在`settings.xml`中加入特定镜像配置可显著提升依赖下载速度。示例配置指定了阿里云镜像ID、替代表态仓库、安全的URL、默认布局及启用版本管理。需定位至用户目录下的`.m2/`文件夹编辑`settings.xml`,添加镜像信息后保存测试。若下载仍慢,考虑网络状况或备选镜像。多镜像设置时需注意避免冲突。
3641 3
|
Java
[JarEditor]可直接修改jar包的IDEA插件
### 修改JAR包变得更简单:JarEditor插件简介 **背景:** 开发中常需修改JAR包中的class文件,传统方法耗时费力。JarEditor插件让你一键编辑JAR包内文件,无需解压。 **插件使用:** 1. **安装:** 在IDEA插件市场搜索JarEditor并安装。 2. **修改class:** 打开JAR文件中的class,直接编辑,保存后一键构建更新JAR。 3. **文件管理:** 右键菜单支持在JAR内新增/删除/重命名文件等操作。 4. **搜索:** 使用内置搜索功能快速定位JAR包内的字符串。
3043 2
[JarEditor]可直接修改jar包的IDEA插件
|
弹性计算 Java Serverless
Serverless 应用引擎操作报错合集之上传自定义JAR包,启动时报错,是什么导致的
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
关系型数据库 Java 分布式数据库
PolarDB产品使用问题之部署到服务器上的Java应用(以jar包形式运行)无法连接,如何解决
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。

推荐镜像

更多