欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

將項(xiàng)目上傳到Maven中央倉庫(2023最新版)

 更新時(shí)間:2023年05月15日 09:10:14   作者:co松柏  
本文主要介紹了將項(xiàng)目上傳到Maven中央倉庫(2023最新版),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

官方文檔:https://central.sonatype.org/publish/publish-maven/#a-complete-example-pom

整體流程

  • 注冊(cè) Jira Software
  • 新建問題
  • 完成域名所有權(quán)的驗(yàn)證
  • 配置 gpg 密鑰
  • 配置 setting.xml
  • 配置 pom.xml
  • 上傳

具體操作

注冊(cè) Jira Software :https://issues.sonatype.org/secure/Signup!default.jspa

image.png

新建申請(qǐng)

  • 前兩個(gè)默認(rèn)值沒有必要改動(dòng)
  • Group Id 填域名或 io.github.用戶名(后續(xù)驗(yàn)證會(huì)驗(yàn)證域名或 GitHub 賬號(hào)的所有權(quán))
  • Project URL 和 SCM url 按照實(shí)例填
  • Username(s) 指能夠向這個(gè) Group Id 發(fā)包的 jira 用戶

image.png

查看新建的申請(qǐng)并等待審核(一般5-10分鐘)

image.png

然后官方的機(jī)器人會(huì)給一個(gè)評(píng)論讓我們完成驗(yàn)證

image.png

根據(jù)評(píng)論的提示,如果我們的 Group Id 是域名,則需要給域名添加一條解析記錄;如果是 GitHub 的話,則需要?jiǎng)?chuàng)建一個(gè)新的倉庫來完成驗(yàn)證;做完之后將問題調(diào)整為開放狀態(tài)等待審核(因?yàn)槲疫@里是已經(jīng)完成了,所以是已解決狀態(tài))

image.png

審核成功之后會(huì)有如下評(píng)論

image.png

下載 GPG 工具,在命令行執(zhí)行 gpg --gen-key** **命令,按照指示生成密鑰對(duì)。gpg --list-keys 命令可以查看已生成的密鑰對(duì)。通過 gpg --keyserver keyserver.ubuntu.com --send-keys 公鑰 命令將密鑰對(duì)發(fā)到服務(wù)器,供后面驗(yàn)證使用

image.png

配置 Maven 的 setting.xml 文件。在 servers 里添加一個(gè) server 塊,內(nèi)容如下:

<server>
  <id>ossrh</id>
  <username>jira 賬號(hào)</username>
  <password>jira 密碼</password>
</server>

配置項(xiàng)目的 pom.xml 文件,這里主要是添加了一些插件,測(cè)試通過的示例 pom 文件如下。注意:包的 GAV 坐標(biāo)里的 groupId 一定要跟上面在 jira 申請(qǐng)問題時(shí)填寫的 Group Id 保持一致,否則無法上傳成功

<?xml version="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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.2</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
                <!--  包信息根據(jù)實(shí)際填寫,groupId 一定要跟上面在 jira 申請(qǐng)問題時(shí)填寫的 Group Id 保持一致,否則無法上傳成功 -->
    <groupId>...</groupId>
    <artifactId>...</artifactId>
    <version>...</version>
    <name>...</name>
    <properties>
        <java.version>1.8</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <maven.compiler.encoding>UTF-8</maven.compiler.encoding>
    </properties>
    <dependencies>
        ...
    </dependencies>
    <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>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <excludes>
                        <exclude>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                        </exclude>
                    </excludes>
                </configuration>
            </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>
                    <stagingProgressTimeoutMinutes>20</stagingProgressTimeoutMinutes>
                    <autoReleaseAfterClose>true</autoReleaseAfterClose>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <version>2.2.1</version>
                <executions>
                    <execution>
                        <id>attach-sources</id>
                        <goals>
                            <goal>jar-no-fork</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-gpg-plugin</artifactId>
                <version>1.5</version>
                <executions>
                    <execution>
                        <id>sign-artifacts</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>sign</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <configuration>
                    <additionalOptions>
                        <additionalOption>-Xdoclint:none</additionalOption>
                    </additionalOptions>
                </configuration>
                <executions>
                    <execution>
                        <id>attach-javadocs</id>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
                <!-- 后面是開發(fā)者及項(xiàng)目信息,根據(jù)實(shí)際填寫 -->
    <licenses>
        <license>
            <name>BSD 3-Clause</name>
            <url>https://spdx.org/licenses/BSD-3-Clause.html</url>
        </license>
    </licenses>
    <scm>
        <connection>...</connection>
        <url>...</url>
    </scm>
    <developers>
        <developer>
            <name>...</name>
            <email>...</email>
            <roles>
                <role>Developer</role>
            </roles>
            <timezone>+8</timezone>
        </developer>
    </developers>
</project>

上傳包

image.png

構(gòu)建成功之后可以先查一下是否發(fā)布成功(用 jira 賬號(hào)登錄):https://s01.oss.sonatype.org/#welcome

image.png

成功之后在 jira 創(chuàng)建的問題里會(huì)有評(píng)論(會(huì)有一定延遲),如下圖:

image.png

到這里就完成了,接下來等著其他各大倉庫自動(dòng)同步(網(wǎng)上說4h,但我實(shí)際測(cè)試用了接近7h)就可以了。Maven 中央倉庫首先可以查到(這個(gè)很快,半小時(shí)內(nèi)就可以查到了),然后是我們熟知的mvnrepository.com/和其他倉庫

到此這篇關(guān)于將項(xiàng)目上傳到Maven中央倉庫(2023最新版)的文章就介紹到這了,更多相關(guān)項(xiàng)目上傳到Maven中央倉庫 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論