J'ai publié ma bibliothèque dans le référentiel central Maven. J'avais l'habitude de faire référence à la procédure officielle, mais j'ai eu une erreur à certains endroits, alors j'écrirai la procédure ici.
https://issues.sonatype.org/secure/Signup!default.jspa
https://issues.sonatype.org/secure/CreateIssue.jspa?issuetype=21&pid=10134
Si l'ID de groupe est son propre domaine, il semble authentifier la propriété du domaine. Dans mon cas, j'ai mis dans com.github.pandafw et il a été approuvé immédiatement.
Pour publier des fichiers jar, etc. sur Maven Central, le signe gpg est requis, alors installez GNU PG.
https://www.gnupg.org/download/ Puisqu'il s'agit d'un PC Windows, https://www.gnupg.org/ftp/gcrypt/binary/gnupg-w32-2.2.12_20181214.exe J'ai installé.
C:\Develop\Tools\gnupg\bin>gpg --version
gpg (GnuPG) 2.2.12
libgcrypt 1.8.4
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Home: C:/Users/Ryoma/AppData/Roaming/gnupg
Supported algorithms:
Pubkey: RSA, ELG, DSA, ECDH, ECDSA, EDDSA
Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
CAMELLIA128, CAMELLIA192, CAMELLIA256
Hash: SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
Compression: Uncompressed, ZIP, ZLIB, BZIP2
C:\Develop\Tools\gnupg\bin>gpg --full-gen-key
gpg (GnuPG) 2.2.12; Copyright (C) 2018 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Please select what kind of key you want:
(1) RSA and RSA (default)
(2) DSA and Elgamal
(3) DSA (sign only)
(4) RSA (sign only)
Your selection? 1
RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048)
Requested keysize is 2048 bits
Please specify how long the key should be valid.
0 = key does not expire
<n> = key expires in n days
<n>w = key expires in n weeks
<n>m = key expires in n months
<n>y = key expires in n years
Key is valid for? (0)
Key does not expire at all
Is this correct? (y/N) y
GnuPG needs to construct a user ID to identify your key.
Real name: Ryoma Kimura
Email address: [email protected]
Comment:
You selected this USER-ID:
"Ryoma Kimura <[email protected]>"
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? o
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
gpg: C:/Users/Ryoma/AppData/Roaming/gnupg/trustdb.gpg: trustdb created
gpg: key 27835B3BD2A2061F marked as ultimately trusted
gpg: directory 'C:/Users/Ryoma/AppData/Roaming/gnupg/openpgp-revocs.d' created
gpg: revocation certificate stored as 'C:/Users/Ryoma/AppData/Roaming/gnupg/openpgp-revocs.d\5694AA563793429557F1727835B3BD2A223A.rev'
public and secret key created and signed.
pub rsa2048 2019-02-11 [SC]
5694AA563793429557F1727835B3BD2A223A
uid Ryoma Kimura <[email protected]>
sub rsa2048 2019-02-11 [E]
Saisissez la phrase secrète.
C:\Develop\Tools\gnupg\bin>gpg –-send-keys [KEY_ID]
Pour [ID CLÉ], entrez le 5694AA563793429557F1727835B3BD2A223A généré à l'étape précédente.
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository>
<id>ossrh</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
<!-- sonatype release -->
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.8</version>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>
<!-- gpg sign -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<scm>
<connection>scm:git:https://github.com/pandafw/panda.git</connection>
<developerConnection>scm:git:https://github.com/pandafw/panda.git</developerConnection>
<url>https://github.com/pandafw/panda</url>
</scm>
<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-javadoc-plugin</artifactId>
<version>2.9.1</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
Le chemin par défaut pour settings.xml est C: \ Users \ Ryoma \ .m2 \ settings.xml
<servers>
<server>
<id>ossrh</id>
<username>your-jira-id</username>
<password>your-jira-password</password>
</server>
</servers>
<profiles>
<profile>
<id>ossrh</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<gpg.executable>gpg</gpg.executable>
<gpg.passphrase>[your_gpg_passphrase]</gpg.passphrase>
</properties>
</profile>
</profiles>
mvn clean deploy
https://oss.sonatype.org/
S'il n'y a pas de problème, appuyez sur le bouton [Fermer] pour fermer. Diverses vérifications sont effectuées dans le processus de fermeture, donc si la vérification échoue, une marque d'erreur sera ajoutée, vous pouvez donc vérifier les informations d'erreur sur l'onglet [Activité]. Dans mon cas, en raison d'une erreur de configuration, il y a eu une erreur indiquant que le signe gpg n'a pas été fait ou une erreur indiquant que la clé gpg n'a pas pu être obtenue du serveur, alors [Supprimez] le référentiel avec l'erreur, corrigez le paramètre et relâchez-le avec mvn clean deploy. Faire.
Une fois que vous avez correctement fermé le référentiel téléchargé, vous pouvez le libérer en cliquant sur le bouton [Libérer]. Environ quelques heures plus tard, https://search.maven.org Cela sera reflété dans.
Recommended Posts