Maison > Java > javaDidacticiel > le corps du texte

Guide du développeur Java Open Source : créer et déployer sur Maven Central

王林
Libérer: 2024-07-29 16:45:10
original
998 Les gens l'ont consulté

Table des matières

  • Créez un compte GitHub si vous n'en avez pas encore
  • Demander un compte Maven Central Repository
  • Java Doc
  • Configuration de déploiement
  • GPG
  • Informations pour les développeurs
  • Gestion du code source (SCM)
  • Avis de droit d'auteur (licences)
  • Exemple de fichier POM

Signer le référentiel central Maven

Enregistrer l'espace de noms

Assurez-vous de vous connecter avec github, afin de pouvoir utiliser l'espace de noms gratuit

Texte original
Si vous ne voyez pas cette fenêtre contextuelle ET que vous vous êtes inscrit sur GitHub, alors Sonatype a pu vous accorder automatiquement des autorisations sur l'espace de noms associé à votre identité GitHub. Dans le cadre de votre abonnement GitHub, GitHub vous fournit un domaine github.io. qui reflète votre nom d'utilisateur et vous permet de publier des pages GitHub sous ce domaine. Pour cette raison, Sonatype peut, dans la plupart des cas, vérifier et fournir automatiquement un accès de publication à un espace de noms qui ressemble à io.github..

.

Configuration de déploiement

trouver un espace de noms

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

Assurez-vous que les informations sont cohérentes

<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>
Copier après la connexion

Générer un jeton utilisateur

Afficher le compte > Générer un jeton utilisateur
Une fois terminé, les informations requises par settings.xml seront obtenues
Java開源開發者指南:構建並部署到Maven Central

Spécifiez le serveur (settings.xml)

<settings>
    <servers>
        <server>
            <id>central</id>
            <username>XXXXXX</username>
            <password>YYYYYY</password>
        </server>
    </servers>
</settings>
Copier après la connexion

Spécifier les paramètres du serveur de référentiel central 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>
Copier après la connexion

Javadoc

Générer un document Java à l'aide du plugin Maven

<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>
Copier après la connexion

GPG

Générer une paire de clés GPG

sudo apt-get install gnupg
gpg --full-generate-key
gpg --list-keys
Copier après la connexion

Plugin de signature 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>
Copier après la connexion

Télécharger la clé publique GPG

Il existe deux célèbres serveurs de clés publiques GPG

  • 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
Copier après la connexion

Informations sur le développeur

<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>
Copier après la connexion

GDS

<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>
Copier après la connexion

Licences

<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>
Copier après la connexion

Exemple de POM

object-pool-maven-lib

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!