PLUGIN EM KOTLIN DE SITES COM IA
plugin.yml correto e um JAR que ele consegue compilar para você antes de você baixar.Por que gerar um plugin em Kotlin
Null safety onde o Bukkit precisa
O Bukkit devolve null o tempo todo - jogadores offline, mundos inexistentes, chaves de config ausentes. O Kotlin torna esses casos explícitos na compilação, e não às 2 da manhã no console do seu servidor.
Um projeto Gradle de verdade
build.gradle.kts configurado para o plugin Kotlin JVM e os repositórios do Paper/Spigot, com a estrutura de código padrão. Nada de um único arquivo para o qual você precisa achar um lugar.
Muito menos código repetitivo
Data classes para modelos de config, extension functions em Player e ItemStack e scope functions no lugar de checagens de null aninhadas. A mesma lógica com bem menos código.
Também serve para Folia e proxies
Se você usa o fork multithread do Paper, lembre que o Folia remove a thread principal única e exige agendamento por região - escolha o alvo Folia no gerador de plugins para o agendamento ficar certo desde o início. Para trabalho em nível de rede, use o gerador de plugins de proxy. A documentação de plugins explica as diferenças.
Exemplos de prompts
Perguntas frequentes sobre o gerador de plugins em Kotlin
Plugins em Kotlin rodam em um servidor Spigot ou Paper normal?
+
Sim. O Kotlin compila para bytecode JVM comum, então o servidor nem sabe nem se importa em qual linguagem o plugin foi escrito. Ele carrega exatamente como um plugin Java.
Preciso instalar alguma coisa no servidor?
+
Não. A biblioteca padrão do Kotlin é incluída (shaded) no JAR durante o build, então o plugin é autossuficiente. Isso deixa o JAR maior que o de um plugin Java equivalente.
Maven ou Gradle?
+
Gradle. O alvo Kotlin usa o plugin Kotlin do Gradle, que é a toolchain padrão do Kotlin na JVM. Os alvos Java usam Maven.
O que o Kotlin realmente me dá aqui?
+
Principalmente null safety e menos cerimônia. As APIs do Bukkit retornam null em muitos lugares - getPlayer, getWorld, consultas à config - e o sistema de tipos do Kotlin obriga você a tratar isso na compilação, em vez de descobrir como um NullPointerException em produção. Data classes, extension functions e scope functions também tiram muito código repetitivo da config e dos listeners.
Posso misturar Java e Kotlin em um plugin?
+
O gerador produz um source set Kotlin. O Gradle consegue compilar fontes mistas, então você pode adicionar arquivos Java depois, mas o projeto gerado é Kotlin em primeiro lugar.
Devo escolher Kotlin ou Java?
+
Escolha Java se quiser a máxima compatibilidade com tutoriais, trechos prontos e código de outras pessoas, já que quase todo o material do Bukkit pressupõe Java. Escolha Kotlin se você se sente à vontade com ele e quer um código mais enxuto e com null safety - a superfície da API é idêntica nos dois casos.
Outros geradores do Codexe
Prefer Java, or working somewhere else in the stack? Codexe also generates:
Como o Codexe cria e verifica estes projetos, o que colocar no pedido e os problemas comuns: guia de Spigot and Paper plugins (Java or Kotlin).
PRONTO PARA UM NOVO PLUGIN?
O plano gratuito recarrega 50K tokens por dia, o suficiente para entregar um pequeno plugin em Kotlin de uma só vez.
COMECE A FORJAR