Puede utilizar esta plantilla para desarrollar sus propios complementos Spigot de alta calidad utilizando Gradle con facilidad.
Consulte la plantilla del servidor de Minecraft para iniciar rápidamente su red de Minecraft en menos de 30 segundos.
La plantilla o mejor modelo estándar viene con muchas características que son útiles si desea desarrollar complementos de alta calidad. Sin embargo, no es necesario utilizarlas todas, simplemente puede eliminar las funciones que no necesita.
plugin.yaml
basado en las propiedades del proyecto con SpiGradleya no es necesario un nexo autohospedado o un servidor artefacto
group
: su-id-de-grupo-maven (por ejemplo: io.github.silthus)pluginName
: Su nombre del complementoauthor
: TuNombreroot.projectName
dentro de settings.gradle . Este será su artifactId
.CHANGELOG.md
. Se generará en su primera versión.README
para que apunte a su proyecto y a la identificación del recurso.prepareSpigotPlugins
. Esto intentará descargar todas las dependencias de complementos y las colocará en debug/spigot/plugins/
.debugPaper
. Esto iniciará el servidor en segundo plano y podrá conectarse a él utilizando la dirección localhost:25565
.Lea las Pautas de contribución antes de enviar cualquier solicitud de extracción o abrir problemas.
NOTA
Es posible que deba ejecutar la tareagradle clean
después de cambiar el nombre de los paquetes y volver a importar el proyecto de Gradle para resolver errores al generar elplugin.yml
.
Uno de los principales beneficios de esta plantilla es el hecho de que lanzará automáticamente una nueva versión cada vez que se envíe a master
en función de sus mensajes de confirmación. Esto garantiza que su complemento se publique siguiendo las pautas de control de versiones semánticas. Para que esto funcione debes seguir algunas reglas simples:
Consulte la página de inicio de confirmación convencional para obtener más detalles y ejemplos sobre el tema. Pero aquí hay un resumen rápido para comenzar.
La especificación de confirmaciones convencionales es una convención ligera además de los mensajes de confirmación. Proporciona un conjunto sencillo de reglas para crear un historial de confirmaciones explícito; lo que facilita la escritura de herramientas automatizadas encima. Esta convención encaja con SemVer al describir las características, correcciones y cambios importantes realizados en los mensajes de confirmación.
El mensaje de confirmación debe estructurarse de la siguiente manera:
[optional scope]:
[optional body]
[optional footer(s)]
La confirmación contiene los siguientes elementos estructurales para comunicar la intención a los consumidores de su biblioteca o complemento:
fix:
una confirmación del tipo corrección corrige un error en su código base (esto se correlaciona con PATCH en el control de versiones semántico).feat:
una confirmación del tipo hazaña introduce una nueva característica en el código base (esto se correlaciona con MINOR en el control de versiones semántico).BREAKING CHANGE:
una confirmación que tiene un pie de página CAMBIO ÚLTIMO: o agrega un! después del tipo/alcance, introduce un cambio importante en la API (que se correlaciona con MAJOR en el control de versiones semántico). UN CAMBIO ÚLTIMO puede ser parte de confirmaciones de cualquier tipo.build:
, chore:
, ci:
, docs:
, style:
, refactor:
, perf:
, test:
y otros.BREAKING CHANGE:
y seguir una convención similar al formato git trailer. La especificación de confirmaciones convencionales no exige tipos adicionales y no tienen ningún efecto implícito en el control de versiones semántico (a menos que incluyan un CAMBIO ÚLTIMO). Se puede proporcionar un alcance al tipo de confirmación, para proporcionar información contextual adicional, y está contenido entre paréntesis, por ejemplo, feat(parser): add ability to parse arrays
.
A continuación se muestran algunos ejemplos:
feat: allow provided config object to extend other configs
BREAKING CHANGE: `extends` key in config file is now used for extending other config files
docs: correct spelling of CHANGELOG
feat(lang): add polish language
fix: correct minor typos in code
see the issue for details
on typos fixed.
Reviewed-by: Z
Refs #133
Su complemento se publicará automáticamente como un paquete maven en los paquetes de Github tan pronto como publique una nueva versión.
El group
agregado por su artifactId
se utiliza para identificar de forma única su proyecto al importarlo en otros proyectos. Cuando importa spigot en su proyecto, utiliza el grupo org.spigotmc
seguido del artefactoId spigot-api
y la versión.
Lo siguiente fue tomado de la guía oficial de nombres de Maven.
groupId
identifica de forma única su proyecto en todos los proyectos. Un ID de grupo debe seguir las reglas de nombres de paquetes de Java. Esto significa que comienza con un nombre de dominio invertido que usted controla. Por ejemplo: org.apache.maven
, org.apache.commons
.io.github
adjunto a su nombre de usuario de Github, por ejemplo, io.github.silthus
artifactId
es el nombre del jar sin versión. Si lo creaste, puedes elegir el nombre que quieras con letras minúsculas y sin símbolos extraños. Por ejemplo: `maven, commons-mathDebe configurar la autenticación para los paquetes Github si desea utilizar su paquete maven en otros proyectos.
gradle.properties
dentro de C:Users%username%.gradle
con lo siguiente y reemplace YOUR_GITHUB_USERNAME
con su nombre de usuario de Github y YOUR_PERSONAL_ACCESS_TOKEN
con el token de acceso del paso 1. gpr.user =YOUR_GITHUB_USERNAME
gpr.key =YOUR_PERSONAL_ACCESS_TOKEN
Puede exportar su complemento al directorio de complementos desde su directorio de trabajo con la tarea Gradle prepareSpigotPlugins . La tarea creará y copiará su complemento automáticamente en el directorio plugins/
.
Puede ejecutar o depurar su complemento utilizando la configuración de ejecución Server
desde IntelliJ para descargar automáticamente el servidor de Minecraft, crearlo, copiar sus complementos y los dependientes en él e iniciarlo en modo de depuración.
Esto se debe al asombroso poder de las tareas de depuración de Spigradle. Obtenga más información en la página de Spigradle Github.