Prefacio: proyectos de código abierto
Creo, tiene sus propios proyectos de código abierto es que cada programador corazones más quieren lograr algo, si se trata de proyectos de proyectos grandes o pequeños. Por supuesto, los grandes proyectos no todos los programadores tienen la capacidad completa, sin embargo pequeños proyectos, por ejemplo, me han escrito primavera de arranque Motor de arranque, o escribir sus propias herramientas, lo cual es bastante interesante, bastante sin sentido.
Así que cuando escribimos el proyecto terminado, entonces por supuesto que desea propio proyecto de código abierto para desplegar el interior repositorio central de Maven, y para que todos puedan ver y usar a. Ahora voy a explicar con más detalle cómo implementar sus proyectos de código abierto a Maven, con la esperanza de ayudar a ~
1, Sonatype registrada
En cuestiones Sonatype cuenta obligación de registro, poca complejidad de contraseñas poco por encima, por eso hemos creado una pequeña bodega get de los mejores libros grabarlo.
2, Sonatype de aterrizaje
Nuevo número: Haga clic en la cabeza de navegación 新建
botones
Rellene el formulario: consulte el diagrama
después de Nueva pendiente de aprobación en la línea, la pronta general, no será de notificación por correo, dar un paso atrás aquí se puede realizar en primer lugar, si la aprobación de éxito puede ser ignorada, si el centro hay un problema, por ejemplo, como el mencionado anteriormente a nombre de dominio correspondiente ID de grupo si usted como propietario, entonces usted necesita para restaurar la línea sobre el tema.
3, descargar e instalar gunpg
Directamente en las Baidu buscar y descargar.
Después de la instalación, abrimos la ventana de cmd, introduzca gpg --version
comprobación de si la instalación es correcta, el valor predeterminado es añadir la variable de entorno no es un problema, si no, instalar manualmente el directorio bajo el bin
directorio anexa a la variable de entorno path
de la ruta.
4, crear una clave
Ejecución gpg --gen-key
, siga las indicaciones para introducir, para entrar Nombre y Correo electrónico y así sucesivamente.
Por último, se le pedirá passphrase
, y luego tenemos que configurar el registro, seguido por el despliegue del proyecto en el repositorio central de Maven y será necesario.
A continuación, muestra la validación de entrada de información clave, por supuesto, también puede introducir el gen --list-key
comando para ver qué teclas.
5, llave de carga
gpg --keyserver http://pool.sks-keyservers.net:11371 --send-keys 8D2522AA90CD41AC1735DCBE52608BB84871117D
gpg --keyserver http://keyserver.ubuntu.com:11371 --send-keys 8D2522AA90CD41AC1735DCBE52608BB84871117D
gpg --keyserver http://keys.gnupg.net:11371 --send-keys 8D2522AA90CD41AC1735DCBE52608BB84871117D
El formato del comando es:
gpg --keyserver 服务器地址 --send-keys 密钥
Lo anterior tres Subida general sobre él, pero si no, cuando se despliegue rápido, siga las instrucciones para seguir subiendo.
6, modificar la configuración de Maven setting.xml
Añadir se requiere la siguiente configuración.
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<!-- 省略其他配置 -->
<servers>
<server>
<id>ossrh</id>
<username>sonatype账号</username>
<password>sonatype密码</password>
</server>
</servers>
<profiles>
<profile>
<id>ossrh</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<gpg.passphrase>生成密钥时输入的passphrase</gpg.passphrase>
<!-- gpg.exe的绝对路径,在gpg安装目录下的bin目录中 -->
<gpg.executable>D:\Program Files (x86)\GnuPG\bin\gpg.exe</gpg.executable>
<!-- 上一步执行gpg --list-key命令输出的路径,一般在C:\User\当前用户\AppData\Roaming\gnupg -->
<gpg.homedir>C:\Users\Administrator\AppData\Roaming\gnupg</gpg.homedir>
</properties>
</profile>
</profiles>
</settings>
7, Modificar pom.xml
Referencia: https://bitbucket.org/simpligility/ossrh-pipeline-demo
En primer lugar, por supuesto, la versión modificada del proyecto, y ya no una instantánea de banda
<groupId>com.github.howinfun</groupId>
<artifactId>h2cache-spring-boot-starter</artifactId>
<version>0.0.1</version>
Aumentar la licencia de código abierto: Configurar su propio acuerdo de proyecto de código abierto para
<licenses>
<license>
<name>MIT License</name>
<url>http://www.opensource.org/licenses/mit-license.php</url>
</license>
</licenses>
Añadir desarrolladores de información:
<developers>
<developer>
<name>Howinfun</name>
<!-- 邮件 -->
<email>[email protected]</email>
<!-- 开源地址 -->
<url>https://github.com/Howinfun</url>
</developer>
</developers>
Aumentar proyecto Dirección:
<scm>
<url>https://github.com/Howinfun/h2cache-spring-boot-starter</url>
<connection>https://github.com/Howinfun/h2cache-spring-boot-starter.git</connection>
<developerConnection>https://github.com/Howinfun</developerConnection>
</scm>
Aumentar Sonatype de configuración:
<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>
Adición de plug-ins:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<target>1.8</target>
<source>1.8</source>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.0.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>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
Añadir un contexto de resolución de problema de configuración bajo libertad JDK1.8 ocurrir:
<profiles>
<profile>
<id>disable-javadoc-doclint</id>
<activation>
<jdk>[1.8,)</jdk>
</activation>
<properties>
<additionalparam>-Xdoclint:none</additionalparam>
</properties>
</profile>
</profiles>
8, el despliegue
Idea utilizar los módulos Maven implementada en ella.
Por último, se le pedirá a construir un exitoso ~
9, la liberación manual
De acuerdo con los pasos anteriores, el proyecto será liberado automáticamente después de cerca de Sonatype, a continuación, suelte, pero debido al retraso de la red y otras razones, puede fallar, por lo que poseemos un poco mejor de desbloqueo manual.
-
Abrir oss.sonatype y registro en, cambie al
stagingRepositories
menú. -
Encontrar sus propios proyectos, seleccionados después de hacer clic
close
en el botón para cerrar el tiempo necesario, se puede esperar un tiempo para ver hacia atrás -
Después de esperar cerca el proyecto esté terminado, seleccione un elemento y haga clic en
release
el botón, la liberación lleva tiempo, y luego haga clic en No se requiere un funcionamiento el publicar, y el proyecto se borrará automáticamente después de la publicación es completa. -
Finalmente, después de doce horas que podemos
Maven
encontrar su propio proyecto dentro del almacén.