Rumah  >  Artikel  >  Java  >  Panduan Pembangun Sumber Terbuka Java: Bina dan Sebarkan ke Maven Central

Panduan Pembangun Sumber Terbuka Java: Bina dan Sebarkan ke Maven Central

王林
王林asal
2024-07-29 16:45:10962semak imbas

Jadual kandungan

  • Buat akaun GitHub jika anda belum mempunyainya
  • Mohon untuk akaun Maven Central Repository
  • Dokumen Java
  • Konfigurasi Penerapan
  • GPG
  • Maklumat Pembangun
  • Pengurusan Kod Sumber (SCM)
  • Notis Hak Cipta (Lesen)
  • Contoh fail POM

Tandatangani repositori pusat maven

Daftar Ruang Nama

Sila pastikan anda log masuk dengan github, supaya anda boleh menggunakan ruang nama percuma

Teks asal
Jika anda tidak melihat pop timbul ini DAN anda mendaftar dengan GitHub, maka Sonatype dapat memberikan anda kebenaran ke ruang nama yang dikaitkan dengan identiti GitHub anda secara automatik Sebagai sebahagian daripada langganan GitHub anda, GitHub menyediakan anda dengan domain github.io yang mencerminkan nama pengguna anda dan membolehkan anda menerbitkan Halaman GitHub di bawah domain itu, Sonatype boleh, dalam kebanyakan kes, mengesahkan dan menyediakan akses penerbitan secara automatik kepada ruang nama yang kelihatan seperti io.github..

Konfigurasi penggunaan

cari ruang nama

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

Pastikan maklumat adalah konsisten

<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>

Hasilkan Token Pengguna

Lihat Akaun > Jana Token Pengguna
Selepas selesai, maklumat yang diperlukan oleh settings.xml akan diperolehi
Java開源開發者指南:構建並部署到Maven Central

Tentukan pelayan (settings.xml)

<settings>
    <servers>
        <server>
            <id>central</id>
            <username>XXXXXX</username>
            <password>YYYYYY</password>
        </server>
    </servers>
</settings>

Tentukan tetapan pelayan repositori pusat 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

Hasilkan Java Doc menggunakan Maven Plugin

<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

Hasilkan Pasangan Kunci GPG

sudo apt-get install gnupg
gpg --full-generate-key
gpg --list-keys

Pemalam tandatangan 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>

Muat naik kunci awam GPG

Terdapat dua pelayan kunci awam GPG yang terkenal

  • 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

Maklumat pemaju

<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>

Lesen

<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>

Contoh POM

objek-pool-maven-lib

Atas ialah kandungan terperinci Panduan Pembangun Sumber Terbuka Java: Bina dan Sebarkan ke Maven Central. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:AI dalam Keselamatan SiberArtikel seterusnya:AI dalam Keselamatan Siber