Muitos plugins e mods dependem de outros: um plugin de loja precisa do Vault e de um plugin de economia, um plugin de menus precisa do PlaceholderAPI, um mod Fabric precisa da Fabric API. Se essa base estiver em falta, estiver desatualizada ou não arrancar, o plugin dependente desliga-se total ou parcialmente. Na maioria dos casos, o servidor continua a funcionar, apenas faltam as funcionalidades do plugin afetado.
Cada secção abaixo trata de uma mensagem. Podes encontrar a mensagem completa na Consola ou em Ficheiros, em logs/latest.log. Lê também as linhas anteriores, pois muitas vezes indicam qual foi o primeiro plugin a falhar. Antes de substituíres plugins ou alterares ficheiros de configuração, cria uma cópia em Cópias de segurança. Após cada alteração, reinicia o servidor por completo em vez de usares /reload, para que todos os plugins carreguem pela ordem correta.
NoClassDefFoundError e ClassNotFoundException: falta uma classe
Este é o aspeto da mensagem:
java.lang.NoClassDefFoundError: org/geysermc/geyser/network/bedrock/nethernet/NetherNetServer
java.lang.NoClassDefFoundError: org/cloudburstmc/protocol/bedrock/data/MovementEffectType
Error loading class: org/jetbrains/annotations/ApiStatus$ScheduledForRemoval (java.lang.ClassNotFoundException: org.jetbrains.annotations.ApiStatus$ScheduledForRemoval)
O que está por detrás disto: os plugins e os mods são compostos por classes, os blocos individuais do programa. Falta um bloco necessário: na maioria dos casos, falta uma dependência ou a versão dela não é compatível. Também pode ser afetada uma biblioteca que o próprio plugin traz consigo; os exemplos mostram isso no caso do Geyser. O resto do servidor continua normalmente a funcionar, enquanto a funcionalidade afetada falha; se o erro ocorrer durante o arranque, este também pode falhar.
Como resolver:
- Procura, nas linhas à volta da mensagem, o plugin ou mod afetado. O nome do ficheiro antes de
.jar//no stacktrace, a lista de chamadas por baixo do erro, ajuda a identificá-lo; no caso dos mods, também as linhas de carregamento anteriores. - Compara, na página do projeto, as dependências e versões exigidas com os teus Plugins ou Mods instalados.
- Pára o servidor, instala as dependências em falta ou substitui os ficheiros afetados por versões compatíveis entre si.
- Reinicia por completo e verifica novamente a Consola.
Bom saber: substitui os ficheiros de plugins e mods com o servidor parado. Se os ficheiros foram substituídos com o servidor em funcionamento, volta a carregá-los com um reinício completo.
„Cannot execute command … plugin is disabled“: o comando do plugin está desativado
Este é o aspeto da mensagem:
Unexpected exception while parsing console command "<Command>"
org.bukkit.command.CommandException: Cannot execute command '<Command>' in plugin <Plugin> v<Version> - plugin is disabled.
[Essentials] Cannot execute command '<Command>' in plugin <Plugin> v<Version> - plugin is disabled.
O que está por trás disto: O comando pertence a um plugin que não pôde ser ativado no arranque do servidor. A causa real encontra-se mais acima no registo de arranque, muitas vezes "unsupported server version": a versão do plugin não é compatível com a versão do servidor. O que importa é o nome a seguir a "in plugin", mesmo que no início apareça "Essentials". Se o plugin desativado substituir comandos básicos como list, estes também deixam de funcionar. O servidor em si continua a funcionar.
Como resolver:
- Abre
logs/latest.logem Ficheiros e procura o nome do plugin a seguir a "in plugin". Lê as mensagens de arranque, por exemplo "Error occurred while enabling …". - Introduz
pluginsna Consola. Os plugins desativados aparecem a vermelho. - Corrige o erro de arranque. Verifica a versão do servidor em Versão e instala em Plugins uma versão adequada do plugin. Pára o servidor antes de fazeres a substituição. Mais informações: O plugin não é compatível com a versão do servidor.
- Reinicia e verifica com
pluginsse o plugin aparece a verde. Depois, testa o comando.
Bom saber: A mensagem do comando é consequência do erro de arranque. Desaparece assim que o plugin voltar a iniciar.
„Vault economy not found“: falta a ligação do Vault a um plugin de economia
Este é o aspeto da mensagem:
[<Plugin>] Vault economy not found! Disabling plugin...
[<Plugin>] - Disabled due to no Vault dependency found!
[<Plugin>] java.lang.IllegalStateException: Found Vault but no economy, please check whether your economy plugin supports Vault.
O que está por trás disto: O plugin afetado acede, através do Vault, a um plugin de economia para lidar com dinheiro, preços ou recompensas. O Vault é apenas a interface; as contas são geridas pelo plugin de economia. Se faltar um dos dois, ou se o plugin de economia for carregado depois do plugin que depende dele, este desativa-se. O servidor continua a funcionar, mas o plugin afetado fica completamente em falta.
Como resolver:
- Verifica em Plugins se o Vault está instalado.
- Verifica se está instalado um plugin de economia com ligação ao Vault, por exemplo o EssentialsX com a sua função de economia integrada, o CMI ou o XConomy.
- Instala o que estiver em falta, sempre numa versão compatível com a versão do teu servidor.
- Reinicia o servidor por completo. Um
/reloadou o recarregamento de plugins individuais facilmente baralha a ordem de carregamento. - Introduz
vault-infona Consola. Ao lado de "Economy" deverá aparecer agora o teu plugin de economia.
Bom saber: A mensagem também aparece quando o Vault está presente, mas o próprio plugin de economia falha ao arrancar. Nesse caso, procura o nome dele em logs/latest.log.
"Failed to register events": falta um plugin ou uma parte do programa do servidor necessária
Este é o aspeto da mensagem:
[<Plugin>] Failed to register events for class <Class> because com/vexsoftware/votifier/model/VotifierEvent does not exist.
[<Plugin>] Failed to register events for class <Class> because com/projectkorra/projectkorra/event/BendingPlayerCreationEvent does not exist.
[<Plugin>] Failed to register events for class <Class> because io/papermc/paper/event/player/AsyncPlayerSpawnLocationEvent does not exist.
O que está por trás disto: Um plugin não consegue registar listeners, ou seja, funções para eventos do jogo, porque falta uma classe necessária. As classes são partes de programa que, neste caso, costumam ser disponibilizadas por outro plugin. As funções afetadas ficam em falta; as restantes funções do servidor podem continuar a funcionar. O caminho a seguir a because ajuda a identificar a origem:
me/clip/placeholderapi: PlaceholderAPI;net/milkbowl/vault: Vault.com/ghostchu/quickshop: QuickShop-Hikari;net/ess3: EssentialsX.com/vexsoftware/votifier: Votifier;com/projectkorra: ProjectKorra.
Como resolver:
- Associa o caminho indicado a um plugin necessário e verifica os respetivos requisitos.
- Se estiver em falta, instala-o em Plugins, numa versão compatível com a versão do servidor. Se já estiver instalado, procura em
logs/latest.logerros de arranque desse próprio plugin e resolve-os primeiro. - No caso de
io/papermcouorg/bukkit, verifica antes que software de servidor e que versão o plugin que reporta o erro suporta. Escolhe uma combinação compatível. - Reinicia e verifica a Consola.
Bom saber: Classes do servidor em falta podem indicar uma versão diferente ou inadequada do software do servidor. O plugin não é compatível com a versão do servidor.
"Could not hook into …": o plugin necessário está em falta ou não foi carregado
Este é o aspeto da mensagem:
[<Plugin>] Could not hook into PlaceholderAPI!
<Plugin> will now disable!
O que está por trás disto: "Hook" significa aqui ligação. O plugin que reporta o erro quis ligar-se, no arranque, a outro plugin de que precisa para funcionar. No entanto, este estava em falta ou ainda não tinha sido carregado nesse momento. Muitos plugins desativam-se a si próprios nesse caso. O servidor continua a funcionar normalmente, mas as funções do plugin que reporta o erro ficam totalmente em falta, num plugin de menus, por exemplo, todos os menus.
Como resolver:
- Lê os dois nomes na mensagem: entre parênteses retos está o plugin que reporta o erro e, a seguir a "hook into", o que está em falta.
- Se o plugin em falta não estiver em Plugins, instala-o numa versão compatível com a versão do teu servidor. Muitas vezes é o PlaceholderAPI.
- Se já estiver instalado, procura o nome dele em
logs/latest.log. Se ele próprio gerar um erro no arranque, essa é a verdadeira causa. Resolve-a primeiro. - Reinicia o servidor por completo.
Bom saber: Não precisas de reinstalar o plugin que reporta o erro. Volta a funcionar assim que a dependência estiver disponível no arranque.
O ViaBackwards desativa-se porque o ViaVersion está desatualizado
Assim é a mensagem:
[ViaBackwards] YOUR VIAVERSION IS OUTDATED
[ViaBackwards] VIABACKWARDS WILL NOW DISABLE
O que está por trás: O ViaVersion permite que jogadores com versões mais recentes do Minecraft entrem no teu servidor, e o ViaBackwards complementa isto para versões mais antigas. O ViaBackwards é uma extensão do ViaVersion e requer uma build do ViaVersion compatível e suficientemente recente. Se o ViaVersion for mais antigo, o ViaBackwards desativa-se. O servidor continua a funcionar, mas os jogadores com clientes mais antigos deixam de conseguir entrar.
Como resolver:
- Em Plugins, verifica quais as versões do ViaVersion e do ViaBackwards que estão instaladas.
- Atualiza ambos em conjunto para builds atuais que sejam compatíveis entre si. A própria mensagem indica a página oficial de transferência. Se usas também o ViaRewind, atualiza-o no mesmo passo.
- Reinicia o servidor e verifica com
pluginsna Consola se o ViaBackwards aparece a verde.
Bom saber: Atualiza sempre os plugins Via em conjunto. Quem renova apenas o ViaBackwards acaba exatamente nesta mensagem.
Em detalhe: Configurar o ViaVersion: ligar clientes mais antigos e mais recentes
O UltimateDonutSmp desativa-se sem o PlaceholderAPI
Este é o aspeto da mensagem:
[UltimateDonutSmp] UltimateDonutSmp requires PlaceholderAPI
[UltimateDonutSmp] UltimateDonutSmp is disabling itself to prevent broken sidebar output.
O que está por detrás disto: o UltimateDonutSmp mostra valores na sidebar, a apresentação no lado direito do ecrã. Estes valores chegam através de marcadores de posição, pequenas variáveis como %player_name%, que o PlaceholderAPI preenche com valores reais. Se o PlaceholderAPI estiver em falta ou desativado, o UltimateDonutSmp desativa-se de propósito, para que os jogadores não vejam marcadores de posição avariados. O servidor em si continua a funcionar normalmente.
Como resolver:
- Instala o PlaceholderAPI em Plugins, numa versão compatível com a versão do teu servidor.
- Se já estiver instalado, verifica em
logs/latest.logse dá algum erro ao iniciar e resolve-o primeiro. - Pára o servidor e volta a iniciá-lo. Recarregar através de um comando não é suficiente neste caso.
Bom saber: se, depois disso, a sidebar mostrar texto como %vault_eco_balance% em vez de números, falta uma extensão do PlaceholderAPI. Descarregas essa extensão na Consola com papi ecloud download <Extensão> e aplicas com papi reload.
Um plugin necessário não está instalado
Este é o aspeto da mensagem:
[<Plugin>] <Dependência> is required but was not found
[<Plugin>] <Dependência> plugin not found! Disabling
[<Plugin>] Download <Dependência> from https://<Endereço>
O que está por detrás disto: o plugin assenta noutro plugin e não o encontra ao iniciar. O nome dessa base é indicado na própria mensagem, por vezes até com o endereço de download. Consoante o plugin, ele desativa-se por completo ou uma parte dele deixa de funcionar. A mensagem também aparece quando a base está como ficheiro na pasta plugins, mas não arranca.
Como resolver:
- Anota o nome da base em falta indicado na mensagem.
- Verifica em Plugins se está instalada. Se não estiver, instala-a numa versão compatível com a versão do teu servidor. Como fazer: Instalar e gerir plugins.
- Se estiver instalada, procura o nome dela em
logs/latest.log. Um erro ao iniciar é então a verdadeira causa. - Reinicia o servidor.
Bom saber: se já não precisas do plugin que mostra a mensagem, podes removê-lo. Assim a mensagem também desaparece.
Um plugin não encontra um sistema de economia
Este é o aspeto da mensagem:
[<Plugin>] Vault economy provider not found!
[<Plugin>] Vault is not found or no economy plugin found
O que está por detrás disto: para dinheiro, preços e recompensas, o plugin precisa de dois parceiros: o Vault ou o VaultUnlocked como interface e um plugin de economia como o EssentialsX, que gere os saldos. Se não encontrar ambos, desativa-se ou não atribui recompensas em dinheiro. Consequências típicas: um plugin de lojas como o QuickShop não arranca corretamente, um plugin de missões indica que não consegue pagar uma recompensa.
Como resolver:
- Verifica em Plugins se o Vault ou o VaultUnlocked está instalado.
- Verifica se há um plugin de economia ativo, por exemplo o EssentialsX. Sem um plugin deste tipo, o Vault não tem nada para disponibilizar.
- Instala o que estiver em falta, em versões compatíveis com a versão do teu servidor, e reinicia o servidor.
- No caso do Vault, confirma com
vault-infona Consola se a seguir a "Economy" aparece um plugin de economia.
Bom saber: como configurar o EssentialsX está explicado em Configurar o EssentialsX.
O plugin de recompensas Bountys não encontra o Vault
Este é o aspeto da mensagem:
[Bountys] Vault Plugin wasn't detected!
O que está por detrás disto: o Bountys paga as recompensas através do Vault e, para isso, normalmente precisa também de um plugin de economia que gira os saldos. Ao iniciar, o Vault não foi encontrado. Por isso, as funções de dinheiro do Bountys não funcionam e não é possível pagar recompensas. O servidor em si e os outros plugins não são afetados.
Como resolver:
- Decide se precisas do Bountys. Se não precisares, remove-o em Plugins e a mensagem desaparece.
- Se o quiseres manter, coloca o Vault e um plugin de economia compatível, como o EssentialsX, na pasta de plugins, o mais simples é através de Plugins.
- Se o Vault já lá estiver, verifica em
logs/latest.logse o próprio Vault indica um erro ao iniciar. - Reinicia o servidor e verifica com
vault-infona Consola se o Vault encontrou um plugin de economia.
Bom saber: se outros plugins indicarem que falta o Vault ou uma economia, resolves todas as mensagens com o mesmo passo.
O AuthMe não encontra um plugin de permissões através do Vault
Este é o aspeto da mensagem:
[AuthMe] Error while hooking into Vault [PermissionHandlerException]: Could not load permissions provider service
O que está por detrás disto: o AuthMe é um plugin de login em que os jogadores iniciam sessão com uma palavra-passe. Para as suas funções de grupos e permissões, consulta através do Vault um serviço de permissões, ou seja, um plugin de permissões. O Vault está instalado, mas não disponibiliza esse serviço ao AuthMe. Por isso, as funções de grupos e permissões do AuthMe deixam de funcionar. A mensagem afeta apenas estas funções adicionais.
Como resolver:
- Instala em Plugins o LuckPerms ou outro plugin de permissões com ligação ao Vault.
- Atualiza o Vault e o AuthMe para versões compatíveis com a versão do teu servidor.
- Reinicia o servidor.
- Introduz
vault-infona Consola. A seguir a "Permission" deverá aparecer agora o teu plugin de permissões.
Bom saber: como criar grupos e permissões é mostrado em Configurar o LuckPerms.
O StackSpawners precisa do DecentHolograms
Este é o aspeto da mensagem:
[StackSpawners] DecentHolograms was not found. The plugin will not work
O que está por detrás disto: o StackSpawners agrupa spawners e usa o plugin DecentHolograms para as suas indicações flutuantes, os chamados hologramas. Não traz esta função consigo. Se o StackSpawners não encontrar o DecentHolograms ao iniciar, não consegue funcionar. O servidor continua a funcionar, mas as funções do StackSpawners ficam em falta.
Como resolver:
- Instala o DecentHolograms em Plugins, numa versão compatível com a versão do teu servidor e com o StackSpawners. A página do plugin StackSpawners indica as versões suportadas.
- Se o DecentHolograms já estiver instalado, procura em
logs/latest.logum erro de arranque do DecentHolograms e resolve-o primeiro. - Pára o servidor por completo e volta a iniciá-lo. Assim, os dois plugins carregam pela ordem correta.
Bom saber: se já não usas o StackSpawners, remove-o. Assim a dependência também deixa de existir.
O LightAntiCheat-Plus não encontra o PacketEvents
Este é o aspeto da mensagem:
(LightAntiCheat-Plus) Failed to start listener-mode … com/github/retrooper/packetevents/event/PacketListenerCommon
O que está por trás: O LightAntiCheat-Plus é um plugin de anti-cheat. Lê o tráfego dos jogadores através do PacketEvents, um plugin próprio que prepara pacotes de rede para outros plugins. Se o PacketEvents estiver em falta ou estiver instalado numa versão que o LightAntiCheat-Plus não espera, a sua monitorização não arranca. O servidor continua a funcionar, mas a proteção contra batota fica total ou parcialmente desativada.
Como resolver:
- Consulta a página do LightAntiCheat-Plus para ver que versão do PacketEvents é necessária.
- Instala ou atualiza o PacketEvents em Plugins para essa versão, compatível com a versão do teu servidor.
- Se necessário, atualiza também o LightAntiCheat-Plus, para que ambos sejam compatíveis entre si.
- Para o servidor por completo e volta a iniciá-lo.
Bom saber: Outros plugins também usam frequentemente o PacketEvents. Depois da mudança, verifica em logs/latest.log se continuam a arrancar sem erros.
„The plugin is disabling itself“: plugin desativado após um erro
Assim aparece a mensagem:
[<Plugin>] The plugin is disabling itself.
[<Plugin>] [<Plugin>] Disabling plugin...
[<Plugin>] [PacketEvents] Nie udało się uruchomić systemu pakietowego kostiumów po <Count> próbach.
O que está por trás disto: Quando um plugin indica que se desativa após um erro, as suas funções deixam de estar disponíveis até ao próximo arranque bem-sucedido. O servidor de Minecraft continua a funcionar. A linha polaca do PacketEvents refere um sistema de trajes que não conseguiu iniciar após várias tentativas; mensagens de desativação adicionais mostram se o plugin inteiro falha. A causa real encontra-se normalmente nas linhas anteriores, por vezes noutro idioma.
Como resolver:
- Em Ficheiros, abre
logs/latest.loge lê as linhas anteriores à mensagem. Verifica se há indicações de dependências em falta, versões incompatíveis ou erros de configuração. - Atualiza o plugin afetado e confirma na página dele se é compatível com a versão do teu servidor e se precisa de outros plugins.
- Reinicia o servidor e verifica na Consola se o plugin e a função afetada arrancam.
- Se o erro persistir, faz uma cópia de segurança da pasta de plugins, remove o plugin como teste e reinicia. Comunica o erro ao autor do plugin com linhas de registo anonimizadas.
Bom saber: Os erros durante o funcionamento podes classificá-los com Plugin gera erros durante o funcionamento.
O AuthMeBia não é compatível com a tua versão do AuthMe
Este é o aspeto da mensagem:
[AuthMeBia] AuthMe DataSource reflection unavailable; premium skip and session autologin both disabled
O que está por trás: O AuthMeBia é uma extensão para o plugin de login AuthMe. Acede a uma função interna do AuthMe que não existe assim na tua versão do AuthMe. Por isso, o AuthMeBia desativa duas funcionalidades: o Premium-Skip, que permite entrar sem palavra-passe a jogadores com uma conta de Minecraft comprada, e o Session-Autologin, o início de sessão automático quando alguém volta a entrar pouco depois de sair. O próprio AuthMe continua a funcionar e os jogadores iniciam sessão com palavra-passe, como de costume.
Como resolver:
- Verifica em Plugins quais as versões do AuthMe e do AuthMeBia que estão instaladas.
- Consulta na página do AuthMeBia para que versão do AuthMe foi construído.
- Atualiza ambos para versões compatíveis entre si e reinicia o servidor.
- Testa com uma conta comprada se a entrada sem palavra-passe volta a funcionar.
Uma extensão do ProjectKorra não é compatível com a versão principal
Este é o aspeto da mensagem:
java.lang.NoSuchMethodError: 'void com.projectkorra.projectkorra.<Classe>.<Método>()'
com.jedk1.jedcore.ability.<Habilidade>@<Identificador>[…]
O que está por trás: O ProjectKorra traz habilidades de bending para o servidor e extensões como o JedCore acrescentam mais. Cada extensão é construída para uma determinada versão do ProjectKorra. Se chamar um método, ou seja, uma função que não existe na tua versão do ProjectKorra, falha com «NoSuchMethodError». Por vezes escreve também o estado de uma habilidade como uma linha longa no registo. As habilidades afetadas deixam de funcionar, mas o resto do servidor continua a funcionar.
Como resolver:
- Anota em Plugins a versão do ProjectKorra e as versões de todas as extensões.
- Abre a página de transferência de cada extensão. Aí indica-se que versão do ProjectKorra é necessária.
- Instala o ProjectKorra e todas as extensões em versões compatíveis entre si e com a versão do teu servidor.
- Reinicia o servidor e testa uma habilidade da extensão.
Bom saber: Se não existir uma extensão para a tua versão do ProjectKorra, é preferível removê-la a misturar versões antigas e novas.
O AppleSkin não arranca porque falta a Fabric API
Este é o aspeto da mensagem:
Mod 'AppleSkin' (appleskin) <Versão> requires any version of fabric-api, which is missing!
O que está por trás: A maioria dos mods Fabric precisa da biblioteca Fabric API, um conjunto de componentes partilhados que não está incluído no próprio Fabric Loader. O AppleSkin está instalado, mas a Fabric API não. O Fabric Loader verifica isto ao arrancar e interrompe o arranque. Por isso, o teu servidor só volta a arrancar quando acrescentares a Fabric API ou desativares o AppleSkin.
Como resolver:
- Instala em Mods a Fabric API na versão correspondente à tua versão do Minecraft.
- Se não precisares do AppleSkin, usa antes o botão de reparação junto à mensagem em Saúde do servidor. Ele desativa o AppleSkin (o ficheiro é mantido) e reinicia o servidor.
- Verifica na Consola se o servidor arranca por completo.
Bom saber: A Fabric API tem de ser compatível com a tua versão do Minecraft. A mensagem diz «any version», pelo que o próprio AppleSkin não impõe nenhum requisito especial.
Para mais detalhes: Fabric Loader e Fabric API: resolver erros de versão de forma direcionada
A consulta do saldo falha porque o EssentialsX ainda não está pronto
Assim aparece a mensagem:
[ajLeaderboards] Placeholder <Placeholder> for player <Player> threw an error:
Essentials API is called before Essentials is loaded.
O que está por trás disto: Um marcador de posição (placeholder) é um atalho de texto que é substituído por um valor, como o saldo da conta. Aqui, a consulta falha no EssentialsX; a sua interface de economia não está disponível neste momento. Por isso, o valor da classificação não pode ser atualizado. O servidor continua a funcionar.
Como resolver:
- Verifica na Consola se a mensagem aparece ao iniciar, ao parar ou durante o funcionamento.
- Lê os erros de arranque anteriores do EssentialsX. Resolve primeiro esses, se o plugin não tiver sido carregado com sucesso.
- Em Plugins, verifica o EssentialsX, o Vault, o PlaceholderAPI e o ajLeaderboards, bem como a extensão do Vault instalada. Usa versões compatíveis entre si.
- Para o servidor antes de substituires ficheiros e depois reinicia-o por completo. Volta a verificar a classificação depois de o arranque estar concluído.
A tua mensagem não está aqui?
Lê a mensagem completa em logs/latest.log, incluindo as linhas anteriores. Normalmente, o servidor indica primeiro o plugin que falhou e só depois os erros em cadeia de outros plugins. No stacktrace, os nomes dos ficheiros antes de .jar e os nomes das pastas no classpath, por exemplo me/clip/placeholderapi, revelam que plugin ou mod está envolvido. Compara depois as dependências indicadas na página do projeto com os plugins que tens instalados. Cria uma cópia de segurança antes de qualquer alteração. Se não conseguires avançar, abre um ticket e indica a hora da mensagem.