Java オープンソース開発者ガイド: Maven Central のビルドとデプロイ

王林
リリース: 2024-07-29 16:45:10
オリジナル
1021 人が閲覧しました

目次

  • まだ GitHub アカウントをお持ちでない場合は、作成してください
  • Maven Central Repository アカウントを申請する
  • Java ドキュメント
  • 展開構成
  • GPG
  • 開発者情報
  • ソースコード管理 (SCM)
  • 著作権に関する通知 (ライセンス)
  • POM ファイルの例

Maven 中央リポジトリに署名する

名前空間の登録

無料のネームスペースを利用できるよう、必ずgithubでログインしてください

原文
このポップアップが表示されず、GitHub にサインアップした場合、Sonatype は、GitHub サブスクリプションの一部として、GitHub ID に関連付けられた名前空間へのアクセス許可を自動的に付与できます。これにより、ユーザー名が反映され、そのドメインで GitHub ページを公開できるようになります。このため、Sonatype は、ほとんどの場合、io.github..

のような名前空間への公開アクセスを自動的に検証してプロビジョニングできます。

デプロイメント構成

名前空間を見つける

Java開源開發者指南:構建並部署到Maven Central
Java開源開發者指南:構建並部署到Maven Central

情報に一貫性があることを確認してください

<groupId>io.github.internetms52</groupId>
<artifactId>object-pool</artifactId>
<version>0.1.3</version>
<name>object-pool</name>
<packaging>jar</packaging>
<url>https://github.com/internetms52/object-pool-maven-lib</url>
<description>This is a library that implements an Object Pool, and it supports nested object creation as well as constructor specification.</description>
ログイン後にコピー

ユーザートークンの生成

アカウントの表示 > ユーザー トークンの生成
完了すると、settings.xmlで必要な情報が取得されます
Java開源開發者指南:構建並部署到Maven Central

サーバー指定(settings.xml)

<settings>
    <servers>
        <server>
            <id>central</id>
            <username>XXXXXX</username>
            <password>YYYYYY</password>
        </server>
    </servers>
</settings>
ログイン後にコピー

Maven セントラル リポジトリ サーバー設定の指定 (pom.xml)

<plugin>
    <groupId>org.sonatype.central</groupId>
    <artifactId>central-publishing-maven-plugin</artifactId>
    <version>0.5.0</version>
    <extensions>true</extensions>
    <configuration>
        <publishingServerId>central</publishingServerId>
    </configuration>
</plugin>
ログイン後にコピー

Javadoc

Maven プラグインを使用して Java ドキュメントを生成する

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>3.2.0</version>
    <executions>
        <execution>
            <id>attach-javadocs</id>
            <goals>
                <goal>jar</goal>
            </goals>
        </execution>
    </executions>
</plugin>
ログイン後にコピー

GPG

GPG キーペアの生成

sudo apt-get install gnupg
gpg --full-generate-key
gpg --list-keys
ログイン後にコピー

GPG署名プラグイン

<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>
            <configuration>
                <gpgArguments>
                    <arg>--pinentry-mode</arg>
                    <arg>loopback</arg>
                </gpgArguments>
            </configuration>
        </execution>
    </executions>
</plugin>
ログイン後にコピー

GPG公開キーをアップロードする

有名な GPG 公開鍵サーバーが 2 つあります

  • pgp.mit.edu
  • keyserver.ubuntu.com
gpg --keyserver hkp://pgp.mit.edu --send-keys F1BD06AB06C36BD5EB53B6E8710DEC40549547D2
gpg: sending key 710DEC40549547D2 to hkp://pgp.mit.edu

gpg --keyserver hkp://keyserver.ubuntu.com --send-keys F1BD06AB06C36BD5EB53B6E8710DEC40549547D2
gpg: sending key 710DEC40549547D2 to hkp://keyserver.ubuntu.com
ログイン後にコピー

開発者情報

<developers>
    <developer>
        <name>LU.YU HSIN</name>
        <email>yourmail@mail.com</email>
        <organization>internetms52</organization>
        <organizationUrl>https://github.com/internetms52/object-pool-maven-lib</organizationUrl>
    </developer>
</developers>
ログイン後にコピー

SCM

<scm>
    <connection>scm:git:git@github.com:internetms52/object-pool-maven-lib.git</connection>
    <developerConnection>scm:git:git@github.com:internetms52/object-pool-maven-lib.git</developerConnection>
    <url>https://github.com/internetms52/object-pool-maven-lib</url>
</scm>
ログイン後にコピー

ライセンス

<licenses>
    <license>
        <name>Apache License, Version 2.0</name>
        <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
        <distribution>repo</distribution>
    </license>
</licenses>
ログイン後にコピー

POM の例

オブジェクトプール-maven-lib

以上がJava オープンソース開発者ガイド: Maven Central のビルドとデプロイの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!