Visão geral

Lançado v1.2.1
Plataformas
Paper, Purpur, Spigot, Folia
Minecraft
1.21 a 1.21.11, 26.1, 26.2
Java
21
Obrigatório
Nenhum
Opcional
Nenhum

Verdadeiro analisador de compatibilidade de plugins no nível do bytecode para servidores Paper/Spigot. O PluginGuard não adivinha a partir de um banco de dados online nem de uma comparação de textos de versão: ele abre cada jar da sua pasta plugins/ e inspeciona os bytes reais: a versão do arquivo de classe compilado, os metadados declarados em plugin.yml/paper-plugin.yml, as bibliotecas incluídas ou empacotadas com shade, os binários nativos embutidos e o grafo de dependências entre os plugins instalados. Nada é executado e nada é modificado - o PluginGuard apenas lê.

Por que ele existe #

Cada uma das verificações abaixo modela uma maneira real e específica pela qual um plugin pode quebrar em silêncio e que um verificador que apenas olha "o número da versão parece certo" deixará passar:

  • Um plugin é atualizado e agora está compilado para uma versão do Java mais nova do que a que o seu servidor executa; ele não vai apenas se comportar mal, a JVM vai se recusar de vez a carregar a classe (UnsupportedClassVersionError) e o plugin não será ativado, com um stack trace confuso.
  • Um plugin inclui o driver JDBC do SQLite com shade e realoca o pacote org.sqlite durante a compilação (um erro de shading muito comum); a ligação JNI nativa é baseada em nomes, então isso quebra em silêncio em tempo de execução com UnsatisfiedLinkError na primeira vez que o plugin toca no banco de dados, muitas vezes bem depois de o servidor estar funcionando sem problemas.
  • Dois plugins declaram o mesmo nome de comando no plugin.yml - só um deles realmente é dono do comando simples; o outro recua discretamente para a forma qualificada /plugin:command e os administradores passam uma hora se perguntando por que um comando "não está funcionando".
  • Um plugin declara uma dependência obrigatória que não está instalada ou que foi removida em uma atualização posterior - ele não será ativado, e o motivo real fica enterrado em uma mensagem de log de uma linha, fácil de passar despercebida em um log de inicialização longo.

Instalação #

  1. Coloque PluginGuard.jar na sua pasta plugins/.
  2. Inicie (ou reinicie) o servidor. O PluginGuard tem zero dependências obrigatórias e não precisa de configuração - o config.yml e os arquivos de idioma em lang/ (en, tr, es, de, fr, ru) são criados automaticamente com padrões sensatos, e ele executa a primeira análise automaticamente 5 segundos após a inicialização, a menos que você a desative.
  3. Leia a saída do console (ou execute /pluginguard scan você mesmo a qualquer momento).

Compatibilidade #

  • Minecraft 1.21 até 1.21.11, além de 26.1 e 26.2. Java 21 ou mais recente. Paper, Spigot, forks compatíveis com Paper e Folia.
  • O PluginGuard compara os plugins com a versão do Java e da API que o servidor informa, então também verifica corretamente quando o servidor executa uma versão mais nova do Minecraft/Java.

Suporte #

Use a aba de Discussão da página oficial do recurso no BuiltByBit ou as mensagens diretas do BuiltByBit para pedidos de suporte e relatos de bugs.