Plugins de Spigot y Paper
Cómo obtener el mejor plugin de Bukkit, Spigot o Paper con Codexe, en Java o Kotlin: qué pedir, versiones, plugin.yml, dependencias, compilación y problemas habituales.
Actualizado
En esta página
Los tipos Bukkit/Spigot/Paper generan un plugin de servidor que funciona en Paper, Spigot y sus forks. Elige Java (proyecto Maven) o Kotlin (proyecto Gradle con build.gradle.kts).
Para jugar con tu plugin dentro del juego, inicia un servidor de prueba privado con Pruébalo ahora.
Cuando envías la petición, Codexe te pregunta para qué versión de Minecraft es el plugin, de la 1.8.8 a la 26.3. El código se escribe para la API y el nivel de Java de esa versión, y el servidor de prueba ejecuta esa misma versión. Los proyectos creados antes del 30 de septiembre de 2026 conservan la versión escrita en sus archivos de compilación.
#Qué poner en la petición
- Software y versión del servidor: "Paper 1.21.4" o "Spigot 1.20.1". Paper tiene una API más amplia que Spigot. El código escrito para Spigot funciona en Paper, pero no al revés, así que pide Spigot si necesitas los dos.
- Comandos con sus argumentos, quién puede usarlos y el autocompletado con tabulador.
- Permisos con sus valores por defecto (
true,op,false). - Las claves de config.yml que quieras poder editar.
- Almacenamiento: YAML, SQLite, MySQL o en memoria.
- Integraciones: Vault, PlaceholderAPI, LuckPerms, WorldGuard…, nombradas explícitamente para que se añadan como dependencias.
A Paper 1.21.4 plugin (Java) called Bounties.
- /bounty set <player> <amount>: takes money via Vault, adds it to the player's bounty.
- Killing a player with a bounty pays it to the killer.
- /bounty top shows the 10 highest bounties.
- Bounties stored in SQLite. Minimum bounty 100 (config.yml).
- Permission bounties.set (default true).A Paper 1.21.4 plugin in Kotlin called Bounties, same features as above.
Use Kotlin idioms (data classes, extension functions) but keep the Bukkit API usage standard.#Qué genera Codexe
- Un proyecto Maven (Java) o Gradle (Kotlin) con la dependencia de API correcta.
- La clase principal que extiende
JavaPlugin, además de las clases de comandos, listeners y almacenamiento. plugin.ymlcon la clase principal,api-version, los comandos y los permisos, yconfig.ymlcuando hay ajustes.
name: Bounties
version: 1.0.0
main: eu.codexe.bounties.Bounties
api-version: '1.21'
depend: [Vault]
commands:
bounty:
description: Manage bounties
permissions:
bounties.set:
default: true#Versiones y Java
Codexe lee la versión de Minecraft del archivo de compilación y compila con Java 17 (antes de la 1.20.5), Java 21 (1.20.5 y posteriores) o Java 25 (26.x). Si no indicas ninguna versión, se usa la API de Paper/Spigot 1.20.6.
#Compilación y verificación
Codexe compila el plugin antes de marcarlo como Listo y comprueba que el JAR contenga las clases y un plugin.yml (o paper-plugin.yml). Las compilaciones de plugins suelen tardar bastante menos de un minuto. Consulta Compilar.
#Instalación
Descarga el JAR, colócalo en plugins/, reinicia el servidor (no uses /reload) y revisa la consola por si aparecen errores al arrancar.
#Problemas habituales
| Síntoma | Causa probable |
|---|---|
| El plugin no carga, "main class not found" | main: en plugin.yml no coincide con la clase. Pide en el chat que lo corrija, o revísalo tras renombrar algo a mano. |
| "Unsupported API version" en un servidor más antiguo | El plugin apunta a una API más reciente que la de tu servidor. Indica la versión exacta de tu servidor en la petición. |
| Un comando no hace nada | Falta el comando en plugin.yml, o el jugador no tiene el permiso. |
NoClassDefFoundError para Vault o similares | El plugin del que depende no está instalado en el servidor. |
| Compila, pero una función no se comporta bien | Describe en el chat el comportamiento exacto dentro del juego. La verificación comprueba la compilación, no la jugabilidad. |