首页 > 其他分享 >Jar发布到Maven中央仓库

Jar发布到Maven中央仓库

时间:2022-11-12 18:34:46浏览次数:69  
标签:maven 仓库 Jar Maven https apache org dtp com

一、预置环境

基于windows10环境

  • java 1.8
  • maven 3.6.3(maven3.8以上不再支持http,弃用)
  • gpg 2.0+(Centos7内置)

需要去​System Dashboard - Sonatype JIRA​创建一个Issue,使用的域名还要验证是否真实持有。

创建成功之后,如图所示,此时就可以进行jar包部署了。

Jar发布到Maven中央仓库_apache

1、windows生成密钥证书并上传到服务器

windos生成证书安装包下载地址:​​​https://www.gpg4win.org/thanks-for-download.html​

1、安装后打开软件创建一个密钥对

Jar发布到Maven中央仓库_java_02

Jar发布到Maven中央仓库_java_03

邮件地址要是真实可用的,上传到服务器需进行邮件验证

2、选择创建的密钥对导出证书.asc文件

上传到如下网址​​https://keys.openpgp.org/upload​

上传证书

Jar发布到Maven中央仓库_maven_04

发送邮件

Jar发布到Maven中央仓库_apache_05

邮件验证ok

Jar发布到Maven中央仓库_apache_06

2.2 配置Maven

在maven的settings.xml里面添加

<server>
<id>ossrh</id>
<username>sonatype用户名</username>
<password>sonatype密码</password>
</server>

这里的用户名和密码就是下面网址注册的  不要使用中文注册、不要使用中文注册、不要使用中文注册 不然后面会登录maven仓库时无法登录

​https://issues.sonatype.org/secure/Dashboard.jspa​

注册完发一个创建新的项目的less 根据步骤出现下图即可【后面会出一个注册发布的文章】这里先过

Jar发布到Maven中央仓库_java_07

2.3 配置pom

以我自己的pom为例,主要是将官方提供的plugin都cv了过来。

使用注释1到8的最好都配置上 范文使用了begin end隔开了【个人注释可能解释的不对】

<?xml versinotallow="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>java-dtp-demo</artifactId>
<groupId>com.itspz</groupId>
<version>0.0.1</version>
</parent>
<modelVersion>4.0.0</modelVersion>

<!-- 1、begin -->
<groupId>com.itspz.dtp</groupId>
<artifactId>dtp-spring-boot-starter</artifactId>
<version>0.0.1</version>

<name>itspz-dtp</name>
<description>动态线程池工具</description>
<url>https://github.com/SongPingZhou/-java-dtp-demo</url>
<inceptionYear>2022</inceptionYear>

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<skipTests>true</skipTests>
</properties>
<!-- 1、end -->

<dependencies>

<!-- 我的jar包需要nacos -->
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-config-spring-boot-starter</artifactId>
<version>0.2.7</version>
</dependency>

<!-- 我的jar包需要 configuration -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>


</dependencies>

<!-- 2、bgein发布到的仓库 -->
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository>
<id>ossrh</id>
<url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
<!-- 2、end -->

<!-- 3、begin开源协议 -->
<licenses>
<license>
<name>Apache License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
<comments>A business-friendly OSS license</comments>
</license>
</licenses>
<!-- 3、end -->

<!-- 4、begin -->
<scm>
<url>https://github.com/SongPingZhou/-java-dtp-demo</url>
<connection>scm:git:http://[email protected]:SongPingZhou/-java-dtp-demo.git</connection>
<developerConnection>https://blog.51cto.com/u_15430445</developerConnection>
</scm>
<!-- 4、end -->

<!-- 5、begin bug提交地址 -->
<issueManagement>
<system>Github</system>
<url>https://github.com/SongPingZhou/-java-dtp-demo/issues</url>
</issueManagement>
<!-- 5、end -->

<!-- 6、begin -->
<organization>
<name>宋平州</name>
<url>https://blog.51cto.com/u_15430445</url>
</organization>
<!-- 6、end -->


<!--7 begin 开发者信息-->
<developers>
<developer>
<name>songpingzhou</name>
<email>[email protected]</email>
<organization>songpingzhou</organization>
<organizationUrl>https://blog.51cto.com/u_15430445</organizationUrl>
</developer>
</developers>
<!-- 7、end -->

<!-- 8、begin 构建 -->
<build>
<!-- <pluginManagement> -->
<!-- mvn clean source:jar javadoc:jar deploy -DskipTest -->
<!--配置插件-->
<plugins>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.2.1</version>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.3.1</version>
<configuration>
<encoding>UTF-8</encoding>
<charset>UTF-8</charset>
<docencoding>UTF-8</docencoding>
</configuration>
</plugin>


<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>3.0.1</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>


<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.7</version>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>

</plugins>
<!-- </pluginManagement> -->


</build>
<!-- 8、end -->

</project>

二、发布

在项目目录使用如下命令

mvn clean source:jar javadoc:jar deploy -DskipTest

Jar发布到Maven中央仓库_apache_08

最后这样就可以了

Jar发布到Maven中央仓库_maven_09

同步结果如下图。

Jar发布到Maven中央仓库_java_10

Jar发布到Maven中央仓库_maven_11

查看jar包的maven

Jar发布到Maven中央仓库_maven_12

Jar发布到Maven中央仓库_java_13


标签:maven,仓库,Jar,Maven,https,apache,org,dtp,com
From: https://blog.51cto.com/u_15430445/5842440

相关文章

  • 一款好用的插件(Maven-Helper)
    一款好用的插件(Maven-Helper)前言博主在整合log4j日志的时候,发现启动不了项目,报错信息,大致是这样的:意思是在logback-classic-1.2.3.jar和log4j-slf4j-impl-2.13.3.j......
  • java 和 maven 环境配置
    1.说明系统版本:CenetOS7 最小化安装Java版本:jdk-8u192-linux-x64.tar.gzmaven:apache-maven-3.6.3-bin.tar.gz操作系统安装过程参考:​​Linux系统安装标准​​2.Java 安......
  • 5、IDEA配置Maven
    配置自己安装的mavenidea内置的maven不太方便开发。所有我们要手动配置我们自己安装的maven。1、File--settings--Build、Excution、Deployment--BuildTool......
  • mac git远程仓库错误解决方法
    mac更新后不知道怎么回事,git时出现了Permissiondenied(publickey).经查询后得出原因1、首先给git进行config的配置gitconfig--globaluser.name你的用户名gi......
  • 【Java】 java -jar 命令 传递系统参数 与 main函数参数 顺序
    packagecom.liyao.runner;/***用法:java[-options]class[args...]*(执行类)*或java[-options]-jarjarfile[args...]*(执行ja......
  • Docker私有仓库Harbor介绍和部署方法详解
    Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境内的Registry也是非常必要的。这里介......
  • 镜像仓库 Harbor搭建和使用教程
     架构Docker搭建yumupdateyuminstall-yyum-utilsdevice-mapper-persistent-datalvm2yum-config-manager--add-repohttp://mirrors.aliyun.com/docker-ce/l......
  • 【maven】依赖 及 问题排查
    maven负责管理工程依赖的二进制的jar包。这些jar包可能编译时需要可能运行时需要。依赖会形成不同的分支,分支与分支之间没有关系。比如两个分支都依赖了jar包A,那么这其实是......
  • centos7自建yum仓库同步阿里云yum源
    背景:内网环境服务器不能直接安装工具或服务,可以用一台外网服务器同步阿里云的yum仓库,作为本地仓库搭建本地yum仓库编辑yum配置文件,开启缓存使用功能,设置缓存路径cp/e......
  • MVN 推入中央仓库和本地仓库
    1.MVN推入中央仓库mvninstall:install-file-DgroupId=com.huawei.gauss-DartifactId=ZenithDriver-Dversion=1.0.0-Dpackaging=jar-Dfile=1.jar-Drepository=D:\R......