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.
Falta uma classe: NoClassDefFoundError e ClassNotFoundException
Assim é a mensagem:
java.lang.NoClassDefFoundError: org/cloudburstmc/math/GenericMath
at <Plugin>.jar//org.cloudburstmc.math.vector.Vector3i.from(Vector3i.java:403)
Caused by: java.lang.ClassNotFoundException: <Pacote>.<Classe>
O que está por trás: Os plugins e mods para servidores Java são compostos por muitas classes, que são os blocos individuais do programa. A mensagem diz: um plugin ou mod quer usar um bloco que não existe no servidor. Na maioria das vezes falta outro mod ou outro plugin, ou está instalado numa versão que não contém este bloco, ou que já não o contém. O resto do servidor continua normalmente a funcionar, apenas a função afetada falha.
Como resolver:
- Descobre quem está a lançar o erro. Isso revela-se pelo nome do plugin a seguir a
tona linha "Could not pass event … to …" ou pelo nome do ficheiro antes de.jar//no stacktrace, ou seja, nas linhasat …por baixo da mensagem. - Lê o caminho da classe em falta. O início indica muitas vezes o projeto a que pertence, por exemplo
org/geysermcpara o Geyser. - Na página do plugin ou mod afetado, compara as dependências e versões exigidas com os teus Plugins ou Mods instalados.
- Instala as dependências em falta ou coloca todos os envolvidos em versões compatíveis entre si. Depois reinicia o servidor.
Bom saber: Se um ficheiro de plugin foi substituído com o servidor a funcionar, o plugin muitas vezes deixa de encontrar as suas próprias classes. Nesse caso, basta um reinício completo.
Um comando não funciona porque o respetivo plugin está desativado
Assim é a mensagem:
Unexpected exception while parsing console command "<Comando>"
org.bukkit.command.CommandException: Cannot execute command '<Comando>' in plugin <Plugin> v<Versão> - plugin is disabled.
O que está por trás: O comando em si não está errado. Pertence a um plugin que não pôde ser ativado no arranque do servidor, e por isso o servidor responde com este erro sempre que o comando é executado. O motivo real é escrito pelo servidor mais acima no registo durante o arranque, muitas vezes "unsupported server version": a versão do plugin não é compatível com a versão do teu servidor. Se o plugin substituir comandos base como list, como faz o EssentialsX, esses também deixam de funcionar.
Como resolver:
- Em Ficheiros, abre o ficheiro
logs/latest.loge procura o nome do plugin indicado na mensagem. As linhas importantes são as da fase de arranque, por exemplo "Error occurred while enabling …". - Escreve
pluginsna Consola. Os plugins desativados aparecem a vermelho. - Resolve o erro de arranque. Na maioria dos casos, instalas em Plugins uma versão compatível com a versão do teu servidor. Podes ver a versão do teu servidor em Versão. Mais informações: O plugin não é compatível com a versão do servidor.
- Reinicia o servidor e verifica com
pluginsse o plugin aparece agora a verde.
Bom saber: A mensagem do comando é apenas uma consequência. Desaparece assim que o plugin voltar a arrancar.
Falta o Vault ou um plugin de economia
Assim é a mensagem:
[<Plugin>] Vault economy not found! Disabling plugin...
[<Plugin>] - Disabled due to no Vault dependency found!
O que está por trás: Os plugins com dinheiro, preços ou recompensas não gerem o saldo por si próprios. Acedem a um plugin de economia através do Vault. O Vault é apenas a interface, as contas são geridas pelo plugin de economia. Se um dos dois estiver em falta ou só tiver sido 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 o EssentialsX Economy, o CMI ou o XConomy.
- Instala o que estiver em falta, sempre numa versão para a tua versão do servidor.
- Reinicia o servidor por completo. Um
/reloadou recarregar plugins individualmente baralha facilmente a ordem de carregamento. - Escreve
vault-infona Consola. A seguir a "Economy" deverá aparecer 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 no arranque. Nesse caso, procura o nome dele em logs/latest.log.
O plugin não consegue registar partes porque falta outro plugin
Assim é a mensagem:
[<Plugin>] Failed to register events for class <Classe> because me/clip/placeholderapi/<Classe> does not exist.
[QuickShop-FindItemAddOn] Uh oh! Looks like either this plugin has crashed or you don't have QuickShop-Hikari installed.
O que está por trás: No arranque, um plugin regista os seus listeners, ou seja, as partes que reagem a eventos como entrar, partir blocos ou comprar. Algumas delas requerem outro plugin. Se este faltar, são precisamente essas partes que não são registadas, e o resto do plugin funciona. O caminho a seguir a because revela qual é o plugin em falta:
me/clip/placeholderapipertence ao PlaceholderAPInet/milkbowl/vaultpertence ao Vaultcom/ghostchu/quickshoppertence ao QuickShop-Hikarinet/ess3pertence ao EssentialsX
Como resolver:
- Associa o caminho da mensagem a um plugin com a lista acima. Para outros caminhos, ajuda o nome do projeto no caminho, por exemplo
com/projectkorrapara o ProjectKorra. - Instala o plugin em falta em Plugins, numa versão para a tua versão do servidor.
- Reinicia o servidor e verifica se a mensagem deixa de aparecer no arranque.
Bom saber: Se o caminho começar por io/papermc ou org/bukkit, não falta nenhum plugin. Nesse caso, o software do teu servidor é demasiado antigo para o plugin ou está a ser usado o software errado, por exemplo Spigot em vez de Paper. Ajuda sobre isto: O plugin não é compatível com a versão do servidor.
Um plugin não consegue ligar-se a outro plugin
Assim é a mensagem:
[<Plugin>] Could not hook into PlaceholderAPI!
<Plugin> will now disable!
O que está por trás: "Hook" significa aqui ligação. O plugin que emite a mensagem quis ligar-se, no arranque, a outro plugin de que precisa para funcionar. Esse plugin estava em falta ou ainda não tinha sido carregado nesse momento. Muitos plugins desativam-se então a si próprios. O servidor continua a funcionar normalmente, mas as funções do plugin que emite a mensagem ficam completamente em falta, o que num plugin de menus significa todos os menus.
Como resolver:
- Lê os dois nomes na mensagem: entre parênteses retos está o plugin que emite a mensagem, a seguir a "hook into" está o que está em falta.
- Se o plugin em falta não estiver em Plugins, instala-o numa versão para a tua versão do servidor. Muito frequentemente é o PlaceholderAPI.
- Se já estiver instalado, procura o nome dele em
logs/latest.log. Se ele próprio lançar um erro no arranque, essa é a verdadeira causa. Resolve primeiro esse erro. - Reinicia o servidor por completo.
Bom saber: Não precisas de reinstalar o plugin que emite a mensagem. 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.
Um plugin desativou-se a si próprio após um erro
Este é o aspeto da mensagem:
[<Plugin>] An unexpected error occurred, disabling the plugin
[<Plugin>] Cannot enable plugin: <Motivo>
O que está por trás: O plugin encontrou um erro ao arrancar ou durante o funcionamento e, por isso, desativou-se a si próprio. Até ao próximo reinício, todas as suas funcionalidades ficam em falta e os seus comandos respondem apenas com uma mensagem de erro. O plugin afetado aparece entre parênteses retos. A causa costuma estar nas linhas anteriores, consoante a origem do plugin, por vezes também noutro idioma.
Como resolver:
- Abre
logs/latest.loge lê as linhas imediatamente antes da mensagem. Um plugin em falta, uma versão incompatível ou um erro na configuração costumam ser reconhecíveis aí. - Atualiza o plugin e verifica na página dele se é compatível com a versão do teu servidor.
- Se o erro persistir, remove o plugin a título de teste e reinicia. Se tudo funcionar sem ele, comunica o erro ao autor do plugin e anexa as linhas do registo.
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 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.