将jar包发布到本地maven仓库

简介: 将jar包发布到本地maven仓库

项目中在对接第三方服务时经常需要引用第三方的jar包依赖,比如腾讯的短信服务https://cloud.tencent.com/document/product/382/13613
这种场景还是非常多的,如何将第三方的jar包发布到本地,This is a question

现以发布腾讯的短信服务SDK为例子,发布到本地仓库

  1. 下载腾讯短信服务源代码
    腾讯短信服务源代码
  2. 编译源代码,生成jar包
    mvn package

生成jar包

  1. 发布该jar包到本地maven仓库
$ mvn install:install-file -Dfile=C:\Users\11851\Downloads\qcloudsms_java-1.0.4\qcloudsms_java-1.0.4\target\qcloudsms-1.0.4.jar -DgroupId=com.github.qcouldsms -DartifactId=qcloudsms -Dversion=1.0.4 -Dpackaging=jar

发布jar包到本地仓库

之前发布了多次都失败了
发布失败
查看报错信息发现 The specified file 'C:\Users\11851\Downloads\qcloudsms_java-1.0.4\qcloudsms_java-1.0.4\C:Users11851Downloadsqcloudsms_java-1.0.4qcloudsms_java-1.0.4targetqcloudsms-1.0.4.jar' not exists
它是从相对当前命令行所在的路径再加上-Dfile路径查找jar包的,跟预期不太一样。所以上面那种写法将-Dfile写成绝对路径的方式行不通,应该是将-Dfile写成与jar包与当前命令行所在位置的相对路径。
我是将target中的jar包拷出来了

$ mvn install:install-file -Dfile=qcloudsms-1.0.4.jar -DgroupId=com.github.qcouldsms -DartifactId=qcloudsms -Dversion=1.0.4 -Dpackaging=jar

执行结果
现在可以在项目中使用了

 compile group: 'com.github.qcloudsms', name: 'qcloudsms', version: '1.0.4'

小记:
mvn install报错Failed to execute goal org.apache.maven.plugins:maven-gpg-plugin:1.5:sign
原因: 使用的版本是maven3.X,其执行maven-ant-plugin的行为和maven2.x有一定的不同,需要引入pluginManagement
解决方案:
解决办法是:在pom.xml中添加pluginManagement

before:
<build>
   <plugins>
      <plugin></plugin>
      ...
       <plugin></plugin>
    </plugins>
</build>

after:
<build>
   <pluginManagement>
   <plugins>
      <plugin></plugin>
      ...
       <plugin></plugin>
    </plugins>
  </pluginManagement>
</build>
目录
相关文章
|
6天前
|
Java Maven
2022最新版超详细的Maven下载配置教程、IDEA中集成maven(包含图解过程)、以及导入项目时jar包下载不成功的问题解决
这篇文章是一份关于Maven的安装和配置指南,包括下载、环境变量设置、配置文件修改、IDEA集成Maven以及解决jar包下载问题的方法。
2022最新版超详细的Maven下载配置教程、IDEA中集成maven(包含图解过程)、以及导入项目时jar包下载不成功的问题解决
|
1天前
|
Java Maven 容器
Maven使用IDEA自带工具打包,同时将lib下的jar包打入,双击jar包可直接运行
使用IntelliJ IDEA的Artifacts功能,可以将项目依赖的第三方jar包打包进jar文件中,实现双击jar包即可直接运行。
Maven使用IDEA自带工具打包,同时将lib下的jar包打入,双击jar包可直接运行
|
10天前
|
Java Linux Maven
Maven 仓库
Maven 仓库是管理项目依赖、插件及构建输出(构件)的位置。分为本地、中央和远程三种。本地仓库默认位于用户目录 `.m2/repository/`,可配置至其他路径,如 `C:/MyLocalRepository`。Maven 首次运行时创建本地仓库,并按需从中获取或下载构件。中央仓库由 Maven 社区维护,包含丰富的开源 Java 构件及其相关信息,可通过 `http://search.maven.org/#browse` 访问,无需额外配置,但需网络连接。
|
6天前
|
SQL 前端开发 Java
在IDEA中使用Maven将SpringBoot项目打成jar包、同时运行打成的jar包(前后端项目分离)
这篇文章介绍了如何在IntelliJ IDEA中使用Maven将Spring Boot项目打包成可运行的jar包,并提供了运行jar包的方法。同时,还讨论了如何解决jar包冲突问题,并提供了在IDEA中同时启动Vue前端项目和Spring Boot后端项目的步骤。
在IDEA中使用Maven将SpringBoot项目打成jar包、同时运行打成的jar包(前后端项目分离)
|
8天前
|
存储 Java Linux
Maven 仓库
Maven仓库是管理项目依赖、插件及构建输出(如JAR、WAR等)的存储位置。分为本地、中央和远程三种。本地仓库默认位于用户家目录`.m2/repository`,可配置至其他路径;中央仓库由Maven社区维护,包含丰富开源库,无需配置但需网络访问。远程仓库则介于两者之间。通过合理利用这些仓库,可以高效管理项目依赖。
|
12天前
|
存储 Java Linux
Maven 仓库
Maven仓库是管理项目依赖、插件及构建输出(如JAR、WAR文件)的存储位置。分为本地、中央和远程三种。本地仓库默认位于用户家目录`.m2/repository`,可配置至其他路径;中央仓库由Maven社区维护,包含广泛使用的开源库,无需配置但需网络访问。远程仓库则介于两者之间。通过Maven,开发者可自动获取或上传构件,简化了依赖管理。
|
9天前
|
Java Linux Maven
Maven 仓库
Maven 仓库是管理项目依赖、插件及构建输出(构件)的位置。分为本地、中央和远程三种。本地仓库默认位于 `%USER_HOME%/.m2/repository/`,首次执行 Maven 命令时创建,可配置自定义路径。中央仓库由 Maven 社区维护,包含丰富的开源 Java 构件及元数据,无需配置但需网络访问,可通过 `http://search.maven.org/#browse` 浏览。远程仓库则介于两者之间,用于存放特定组织所需的构件。
|
14天前
|
Java Linux Maven
Maven 仓库
Maven 仓库是管理项目依赖、插件及构建输出(如 JAR、WAR 和 POM 文件)的地方。分为本地、中央和远程三种。本地仓库默认位于 `%USER_HOME%/.m2/repository/`,首次运行 Maven 自动创建,可重新配置。中央仓库由 Maven 社区维护,包含丰富的开源组件及其元数据,无需配置但需网络访问,可通过 `http://search.maven.org/#browse` 浏览。远程仓库用于获取不在本地或中央仓库中的构件。
|
16天前
|
存储 缓存 Java
Maven 仓库
Maven 仓库是存储项目依赖、插件及构建输出(如 JAR、WAR 和 POM 文件)的地方。分为本地、远程与中央仓库。本地仓库默认位于 `%USER_HOME%/.m2/repository/`,用于缓存构件;中央仓库由社区维护,包含丰富的开源 Java 构件及其相关信息,无需配置但需联网访问;远程仓库则介于两者之间,用于企业内部共享资源。通过合理配置仓库,Maven 可高效管理项目依赖。
|
20天前
|
缓存 Java Linux
Maven 仓库
Maven仓库管理项目依赖,分为本地、中央和远程仓库。本地仓库默认位于`%USER_HOME%/.m2/repository/`, 可通过`settings.xml`文件重定位。中央仓库由Maven社区维护,包含大量常用库及元数据,无需配置但需网络访问。可浏览中央仓库内容于 http://search.maven.org/#browse. 远程仓库用于下载未缓存的依赖到本地仓库。