首页 教程 开发工具 IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

默认读者都已经安装好 maven环境,如有不知道如何安装 maven 环境的,请先进行 maven 环境的安装学习教程!

一、创建 maven 项目

按照图中方式,创建一个最简单的 Maven 项目!

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

创建的初始项目如下图所示!如果要将打包的项目发布到本地和远程 maven 仓库,则打包方式 packaging 必须为 jar 包形式!!

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

二、编写简单的API功能

创建一个工具类,实现简单的冒泡排序功能!

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

三、打包发布到本地仓库

1、配置 maven 中的 settings.xml 文件

打包发布到本地仓库,那么必须要先创建好本地仓库。在本地,只需要在 maven 安装目录下的 settiings.xml 文件中配置本地仓库 localRepository 所在的目录即可!!

<?xml version="1.0" encoding="UTF-8"?><settingsxmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><!-- localRepository | The path to the local repository maven will use to store artifacts. | | Default: ${user.home}/.m2/repository --><localRepository>D:/Repository/</localRepository><pluginGroups></pluginGroups><proxies></proxies><servers></servers><mirrors></mirrors><profiles></profiles></settings>

2、打包发布到本地仓库

mvn package install # 执行该命令,会将项目打包成jar包依赖,并发布到本地仓库

或者如下图,依次点击 packageinstall 按钮也可!

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

如下图,可以看到本地仓库中已经安装好该 jar 包依赖了,在本地的任何项目中,通过 pom 文件引入该依赖的坐标位置,即可使用!!

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

3、测试使用

在本地的其它项目中,通过该 jar 包依赖的坐标进行引入,测试能否正常使用!如下图所示!!

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

如下图所示,该依赖包能够正常引入到本地项目中进行使用!发布到本地仓库成功!!

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

四、打包发布到远程仓库

1、创建远程仓库

打包发布到远程仓库,那么首先需要创建一个远程的 maven 仓库!这里可以使用阿里云的云效平台免费创建远程 Maven 仓库,地址:https://packages.aliyun.com/

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

仓库名称任意起名!!仓库地址任意起名!! release 表示存储稳定版的依赖包,snapshots 表示存储开发版的依赖包!!两个都勾选表示该仓库可以存储两种形式的依赖包!!

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

2、配置 maven 中的 settings.xml 文件

要将本地开发好的项目打包成 jar 包,并发布到远程仓库,那么肯定要让 maven 工具知道,我们的 jar 包发布的仓库地址在哪里?远程仓库的访问用户和密码是多少?

因此,需要在 maven 安装目录下的 settings.xml 中配置相关的信息!

<?xml version="1.0" encoding="UTF-8"?><settingsxmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><!-- localRepository | The path to the local repository maven will use to store artifacts. | | Default: ${user.home}/.m2/repository --><localRepository>D:/Repository/</localRepository><pluginGroups></pluginGroups><proxies></proxies><servers><!-- 访问远程仓库的用户名和密码 --><server><id>origin-maven-test</id><username>66bc59ca9a2728f7f2866860</username><password>你的密码</password></server></servers><profiles><profile><!-- 任意起名,表示这份配置的名称,需要与下面activeProfiles中相对应 --><id>rdc</id><!-- 推送jar包依赖的远程仓库配置 --><properties><!-- 推送稳定版依赖包的远程仓库地址 --><altReleaseDeploymentRepository> origin-maven-test::default::https://packages.aliyun.com/66bc5f73b9168fe4f613ad66/maven/origin-maven-test </altReleaseDeploymentRepository><!-- 推送开发版依赖包的远程仓库地址 --><altSnapshotDeploymentRepository> origin-maven-test::default::https://packages.aliyun.com/66bc5f73b9168fe4f613ad66/maven/origin-maven-test </altSnapshotDeploymentRepository></properties></profile></profiles><activeProfiles><!-- 激活使用的配置 --><activeProfile>rdc</activeProfile></activeProfiles></settings>

3、打包发布到远程仓库

mvn package deploy # 执行该命令,会将项目打包成jar包依赖,并发布到远程仓库

或者如下图,依次点击 packagedeploy 按钮也可!

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

如下图,可以看到远程仓库中已经拥有该 jar 包依赖了!!在任何项目中,只需要配置拉取该远程仓库中依赖的相关信息,再在 pom 文件中引入该依赖的坐标位置,即可使用!!

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

4、测试

在本地项目中,通过该远程 jar 包依赖的坐标进行引入,测试能否正常使用!

注意:这里的测试,需要先删除上一步中本地仓库安装的 jar 包依赖!!!这样才能够测试出能否拉取远程仓库中的 jar 包依赖!

4.1、配置 maven 中的 settings.xml 文件

同样的,要想从远程仓库中拉取项目所需要的 jar 包依赖,同样需要告诉 maven 工具从哪个远程仓库上拉取依赖?访问远程仓库的用户和密码是多少?

<?xml version="1.0" encoding="UTF-8"?><settingsxmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><!-- localRepository | The path to the local repository maven will use to store artifacts. | | Default: ${user.home}/.m2/repository --><localRepository>D:/Repository/</localRepository><pluginGroups></pluginGroups><proxies></proxies><servers><!-- 访问远程仓库的用户名和密码 --><server><id>origin-maven-test</id><username>66bc59ca9a2728f7f2866860</username><password>你的密码</password></server></servers><profiles><profile><!-- 任意起名,表示这份配置的名称,需要与下面activeProfiles中相对应 --><id>rdc</id><!-- 推送jar包依赖的远程仓库配置 --><properties><!-- 推送稳定版依赖包的远程仓库地址 --><altReleaseDeploymentRepository> origin-maven-test::default::https://packages.aliyun.com/66bc5f73b9168fe4f613ad66/maven/origin-maven-test </altReleaseDeploymentRepository><!-- 推送开发版依赖包的远程仓库地址 --><altSnapshotDeploymentRepository> origin-maven-test::default::https://packages.aliyun.com/66bc5f73b9168fe4f613ad66/maven/origin-maven-test </altSnapshotDeploymentRepository></properties><!-- 拉取jar包依赖的远程仓库配置 --><repositories><repository><id>origin-maven-test</id><!-- 拉取jar包依赖的远程仓库地址 --><url>https://packages.aliyun.com/66bc5f73b9168fe4f613ad66/maven/origin-maven-test</url><releases><!-- 可以拉取稳定版的jar包 --><enabled>true</enabled></releases><snapshots><!-- 可以拉取开发版的jar包 --><enabled>true</enabled></snapshots></repository></repositories></profile></profiles><activeProfiles><!-- 激活使用的配置 --><activeProfile>rdc</activeProfile></activeProfiles></settings>

4.2 测试使用

如下图所示,该依赖包能够正常引入到本地项目中进行使用!发布到远程仓库成功!!

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

IDEA中的 Maven 项目打包成Jar依赖,如何发布到本地仓库、远程仓库?

五、其它注意点

我们使用 maven 环境时,大部分是需要下载第三方的 jar 包依赖的,即熟知的 maven 中央仓库!!由于 maven 中央仓库的地址在国外,因此下载速率很

慢!!这里我们可以使用阿里云的仓库镜像地址来进行下载!!其 settings.xml 配置阿里云仓库镜像地址如下!

<?xml version="1.0" encoding="UTF-8"?><settingsxmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><!-- localRepository | The path to the local repository maven will use to store artifacts. | | Default: ${user.home}/.m2/repository --><localRepository>D:/Repository/</localRepository><pluginGroups></pluginGroups><proxies></proxies><servers></servers><mirrors><!-- 由阿里云提供的Maven中央仓库镜像 --><mirror><id>nexus-aliyun</id><name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><!-- 表示需要使用该镜像地址进行依赖下载的仓库,*表示所有仓库中的依赖下载均使用该镜像地址 --><mirrorOf>*</mirrorOf></mirror></mirrors><profiles></profiles></settings>

特别注意:如果我们在 settings.xml 中设置了自己的私有远程仓库,那么在配置阿里云的仓库镜像地址时,需要在 <mirrorOf>*</mirrorOf> 中通过 <mirrorOf>*,!仓库ID</mirrorOf> 排除自己的私有仓库,否则在下载自己私有仓库中的依赖时,也会去我们配置的镜像仓库地址中进行下载,这样是下载不到私有仓库中的 jar 包依赖的!!!

最后,整体的 settings.xml 文件内容如下

<?xml version="1.0" encoding="UTF-8"?><settingsxmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><!-- localRepository | The path to the local repository maven will use to store artifacts. | | Default: ${user.home}/.m2/repository --><localRepository>D:/Repository/</localRepository><pluginGroups></pluginGroups><proxies></proxies><servers><!-- 访问远程仓库的用户名和密码 --><server><id>origin-maven-test</id><username>66bc59ca9a2728f7f2866860</username><password>你的密码</password></server></servers><profiles><profile><!-- 任意起名,表示这份配置的名称,需要与下面activeProfiles中相对应 --><id>rdc</id><!-- 推送jar包依赖的远程仓库配置 --><properties><!-- 推送稳定版依赖包的远程仓库地址 --><altReleaseDeploymentRepository> origin-maven-test::default::https://packages.aliyun.com/66bc5f73b9168fe4f613ad66/maven/origin-maven-test </altReleaseDeploymentRepository><!-- 推送开发版依赖包的远程仓库地址 --><altSnapshotDeploymentRepository> origin-maven-test::default::https://packages.aliyun.com/66bc5f73b9168fe4f613ad66/maven/origin-maven-test </altSnapshotDeploymentRepository></properties><!-- 拉取jar包依赖的远程仓库配置 --><repositories><repository><id>origin-maven-test</id><!-- 拉取jar包依赖的远程仓库地址 --><url>https://packages.aliyun.com/66bc5f73b9168fe4f613ad66/maven/origin-maven-test</url><releases><!-- 可以拉取稳定版的jar包 --><enabled>true</enabled></releases><snapshots><!-- 可以拉取开发版的jar包 --><enabled>true</enabled></snapshots></repository></repositories></profile></profiles><activeProfiles><!-- 激活使用的配置 --><activeProfile>rdc</activeProfile></activeProfiles><mirrors><!-- 由阿里云提供的Maven中央仓库镜像 --><mirror><id>nexus-aliyun</id><name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><!-- 表示需要使用该镜像地址进行依赖下载的仓库,*表示所有仓库中的依赖下载均使用该镜像地址,!表示排除哪些仓库 --><mirrorOf>*,!origin-maven-test</mirrorOf></mirror></mirrors></settings>

评论(0)条

提示:请勿发布广告垃圾评论,否则封号处理!!

    猜你喜欢
    【MySQL】用户管理

    【MySQL】用户管理

     服务器/数据库  2个月前  2.18k

    我们推荐使用普通用户对数据的访问。而root作为管理员可以对普通用户对应的权限进行设置和管理。如给张三和李四这样的普通用户权限设定后。就只能操作给你权限的库了。

    Cursor Rules 让开发效率变成10倍速

    Cursor Rules 让开发效率变成10倍速

     服务器/数据库  2个月前  1.24k

    在AI与编程的交汇点上,awesome-cursorrules项目犹如一座灯塔,指引着开发者们驶向更高效、更智能的编程未来。无论你是经验丰富的老手,还是刚入行的新人,这个项目都能为你的编程之旅增添一抹亮色。这些规则文件就像是你私人定制的AI助手,能够根据你的项目需求和个人偏好,精确地调教AI的行为。突然间,你会发现AI不仅能理解Next.js的最佳实践,还能自动应用TypeScript的类型检查,甚至主动提供Tailwind CSS的类名建议。探索新的应用场景,推动AI辅助编程的边界。

    探索Django 5: 从零开始,打造你的第一个Web应用

    探索Django 5: 从零开始,打造你的第一个Web应用

     服务器/数据库  2个月前  1.16k

    Django 是一个开放源代码的 Web 应用程序框架,由 Python 写成。它遵循 MVT(Model-View-Template)的设计模式,旨在帮助开发者高效地构建复杂且功能丰富的 Web 应用程序。随着每个版本的升级,Django 不断演变,提供更多功能和改进,让开发变得更加便捷。《Django 5 Web应用开发实战》集Django架站基础、项目实践、开发经验于一体,是一本从零基础到精通Django Web企业级开发技术的实战指南《Django 5 Web应用开发实战》内容以。

    MySQL 的mysql_secure_installation安全脚本执行过程介绍

    MySQL 的mysql_secure_installation安全脚本执行过程介绍

     服务器/数据库  2个月前  1.09k

    mysql_secure_installation 是 MySQL 提供的一个安全脚本,用于提高数据库服务器的安全性

    【MySQL基础篇】概述及SQL指令:DDL及DML

    【MySQL基础篇】概述及SQL指令:DDL及DML

     服务器/数据库  2个月前  491

    数据库是长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。数据库不仅仅是数据的简单堆积,而是遵循一定的规则和模式进行组织和管理的。数据库中的数据可以包括文本、数字、图像、音频等各种类型的信息。

    Redis中的哨兵(Sentinel)

    Redis中的哨兵(Sentinel)

     服务器/数据库  2个月前  316

    ​ 上篇文章我们讲述了Redis中的主从复制(Redis分布式系统中的主从复制-CSDN博客),本篇文章针对主从复制中的问题引出Redis中的哨兵,希望本篇文章会对你有所帮助。