Many plugins don't work entirely on their own. Premium plugins check a license key on startup, connections to Discord, Telegram or VK need a token (a kind of password for a bot or an interface), voice chat plugins open their own network port, and some download libraries or databases from the internet. If one of these is missing or gets rejected, the plugin writes a message to the log. Usually only that plugin's feature fails; in one case the plugin stops the server on purpose.
Each section below covers one message. You can find the full message in the Console or under Files in logs/latest.log, and the plugin configuration under plugins/<Plugin>/. Create a backup under Backups before changing anything. Keys and tokens are secret: don't show them to anyone and crop them out of screenshots.
DonutShop Rejects the License Key
What the message looks like:
[DonutShop] DONUTSHOP ERROR
[DonutShop] The licensing server rejected this key.
What's behind it: DonutShop is a shop plugin that checks its license key with the author's licensing server on startup. This check failed on the last start. Even a non-empty value that has been entered can be invalid, expired or issued for a different installation. The Minecraft server can keep running, but DonutShop is not reliably available: players can't count on the shop.
How to fix it:
- Get or check the free license key via the official DonutShop project page on Modrinth.
- Under Files, open the DonutShop configuration (
plugins/DonutShop/config.yml) and enter the key atlicense-key. Put it in quotation marks, with no spaces before or after it. - Save the file and restart the server.
- Check the Console: only when the "DONUTSHOP ERROR" banner no longer appears on the new start is the problem fixed.
Good to know: If you copied the key from another server, get your own for this server.
LibreLogin Stops the Server: Library Cannot Be Loaded
What the message looks like:
[LibreLogin] Failed to load libraries, stopping server to prevent damage
… Failed to download library <Library>
What's behind it: LibreLogin is a login plugin that players use to sign in with a password. On startup it downloads libraries, meaning program parts it doesn't bundle itself, including PacketEvents. If this download fails, LibreLogin deliberately stops the server instead of running half-functional. So the server won't start until the problem is solved.
How to fix it:
- Restart the server once. If the download source was only briefly unreachable, it often works on the next attempt.
- Update LibreLogin under Plugins to the latest version for your server software. If PacketEvents is installed as a separate plugin on your server, update it as well.
- Restart and check in the Console whether the libraries are loaded now.
- If the message appears on every start, the server can't reach the download address. This can be due to internet access, name resolution (DNS, which translates addresses into IP numbers) or the address itself. If you get stuck, open a ticket and include the time of the message.
Good to know: How to update and replace plugins is shown in Install and Manage Minecraft Plugins.
“Packet queue has … packets”: Simple Voice Chat cannot keep up
What the message looks like:
[voicechat] Packet queue has <Count> packets
[voicechat] Dropping voice chat packets!
What's behind it: Simple Voice Chat transmits voice between players who are close to each other in the game. The message means: the voice chat can't keep up with processing, and voice packets pile up in a queue or are dropped. The cause is a server that is currently overloaded, with low TPS (ticks per second, the rhythm of Minecraft; 20 is normal) or high CPU load. Players then hear choppy or missing voice while the server itself keeps running.
How to fix it:
- Find out what is causing the load, for example with spark: spark: Finding and Understanding Lag on the Minecraft Server.
- Lower the view distance (
view-distance) and the simulation distance (simulation-distance) under Files inserver.properties. This way the server loads fewer chunks, which are world sections of 16 × 16 blocks. - Reduce the number of entities (creatures, animals, dropped items) in individual places and check plugins that cause a lot of load.
- If that's not enough, switch to more performance under Settings & Plan → Plan.
Good to know: Occasional messages shortly after startup or when exploring new areas are harmless as long as they stop again.
Simple Voice Chat Cannot Get Its UDP Port
What the message looks like:
[voicechat] Failed to run voice chat at UDP port <Port>
[voicechat] Disabling Simple Voice Chat
What's behind it: Simple Voice Chat transmits voice over its own UDP port. UDP is the network method for fast real-time data such as voice. The configured port doesn't belong to your server or is already in use, for example because the default value from the plugin's instructions is still entered. Without a port, the voice chat shuts itself off; the game itself keeps running normally.
How to fix it:
- Under Files, open the file
plugins/voicechat/voicechat-server.properties. If you run Simple Voice Chat as a mod, it is located atconfig/voicechat/voicechat-server.properties. - Set
portto your server's port number. Your game port is open for both TCP and UDP. - Save the file and restart the server.
- Check in the Console whether the message no longer appears, and test the voice chat in the game.
In detail: Set Up Simple Voice Chat on the Minecraft Server.
Good to know: Only one program can open a UDP port at a time. If another plugin already uses the same port, such as Geyser for Bedrock players, one of the two needs a different port that is assigned to your server.
“No bot token”: Discord login fails
What the message looks like:
[DiscordSRV] No bot token has been set in the config; a bot token is required to connect to Discord.
[voicechat-discord] Failed to load a bot. Please make sure that the token property is a string and the vc_id property is a number.
[DiscordWhitelist] Edit plugins/DiscordWhitelist/config.yml and set discord.bot-token, then run /discordwhitelist reload.
What's behind it: Discord integrations need their bot's token, a secret string acting as a password. If missing or invalid, Discord stays disconnected while Minecraft keeps running. voicechat-discord also checks setting types: token must be text and vc_id a number.
How to fix it:
- Create or select your bot in the Discord Developer Portal. Generate a new token if needed.
- Under Files, enter it in the configuration: DiscordSRV uses
plugins/DiscordSRV/config.ymlwithBotToken; DiscordWhitelist usesplugins/DiscordWhitelist/config.ymlwithdiscord.bot-token. Follow other integrations' own instructions. - For voicechat-discord,
tokenmust be a string andvc_idthe number required by its instructions. - Invite the bot to your Discord server if needed, save, and restart Minecraft.
Good to know: Never share the token; reset it if exposed. For intent errors, enable the required “Privileged Gateway Intents” in the Developer Portal.
“Could not download GeoLiteAPI database”: Country database unavailable
What the message looks like:
[AuthMe] Could not download GeoLiteAPI database [FileNotFoundException]: plugins/AuthMe/GeoLite2-Country.mmdb (No such file or directory)
What's behind it: Some plugins, such as AuthMe, map IP addresses to countries using a downloaded database, usually MaxMind's GeoLite2, but this operation failed. A FileNotFoundException with “No such file or directory” means the named local file or a parent folder is missing. The plugin keeps running; country-based features such as country blocks remain inactive without the database.
How to fix it:
- For temporary download problems, the next restart tries again.
- For “No such file or directory”, check the named location under Files and the path in the plugin configuration. Set up the database following the instructions for your plugin version.
- If the download still fails, check the configuration under
plugins/<Plugin>/. If your version requires a license key, enter your valid key in the designated field. - Save, restart the server and check in the Console whether the message disappears.
Good to know: If you do not use country-based features, you can ignore the message. The plugin's other features keep working.
DonutShop Is Locked Without a License Key
What the message looks like:
[DonutShop] DONUTSHOP LOCKED
[DonutShop] No license key is set in config.yml.
[DonutShop] Then run: /link <your-key>
What's behind it: DonutShop only starts with a license key. None is entered in its config.yml, so the shop stays locked. The key is free, but you have to get it from the author once. The Minecraft server itself is not affected.
How to fix it:
- Get the free key from the plugin author. The way to do so, a Discord link, is given in the message in the lines around the banner.
- Run
/link <your-key>as the message instructs, or enter the key inplugins/DonutShop/config.yml. - Restart the server.
- Check in the Console whether the "DONUTSHOP LOCKED" banner has disappeared.
Good to know: If "DONUTSHOP ERROR" appears afterwards, the key was rejected. In that case, the section on the rejected DonutShop license will help.
Plugin's VK Token Is Rejected
What the message looks like:
com.vk.api.sdk.exceptions.ApiAuthException: User authorization failed (5): User authorization failed: invalid access_token (4).
What's behind it: Some plugins connect to VK, the social network VKontakte. For this they need an access token, a kind of password for the interface. VK rejected the token that was entered ("invalid access_token"), so it is invalid, expired or revoked. The plugin's VK features are disabled, while the rest of the server runs normally.
How to fix it:
- Generate a new access token on VK with the permissions the plugin requires. Which ones those are is stated in the plugin's instructions.
- Under Files, open the plugin's configuration under
plugins/<Plugin>/and replace the old token with the new one. - Save the file and restart the server.
- Check in the Console whether the message no longer appears.
Good to know: Which plugin is affected is shown by the stack trace below, meaning the indented lines with at …. Next to com.vk.api, the plugin's package name appears there.
Plugin Cannot Provide Its Resourcepack
What the message looks like:
java.io.IOException: HTTP 403 dla http://<Address>/<Pack>.zip
Failed to start resourcepack server: Server is not publicly reachable on <Address>:<Port>
What's behind it: Some plugins deliver their own resourcepack to players. To do this, they download it from an address, build it themselves or start a small built-in web server from which players fetch it. One of these steps failed. Players then don't get the pack, and textures or features that depend on it are missing. The server keeps running.
How to fix it:
- Read the HTTP status in the message: 403 means access denied, 404 means file not found.
- Open the pack address from the plugin configuration in a browser. It must download the ZIP file directly and must not show a preview or login page.
- Correct the address or upload the pack to a place that serves it publicly.
- If the plugin uses a built-in web server, only enter a port there that is assigned to your server in the panel and publicly reachable.
- Restart the server.
Plugin Needs an API Key for a Third-Party Service
What the message looks like:
Please set your <Service> API key
Get your API key from: https://<Provider>/…
accessToken=MISSING
What's behind it: The plugin works together with a third-party service, for example for statistics or a connection to a website. For this it needs an API key or credentials. An API key is an identifier the plugin uses to identify itself to the service. It is missing from the configuration. Until it is entered, the plugin doesn't work; the rest of the server keeps running.
How to fix it:
- Read the message: it usually names the service, file and field, often also the address where you get the key ("Get your API key from:").
- Create an account with the service and generate the key there.
- Under Files, open the named file under
plugins/<Plugin>/and enter the key. The file is usually in YAML format, where the indentation with spaces determines the structure; don't change it, and put the value in quotation marks. - Save the file and restart the server.
Good to know: If the plugin then reports that it cannot read the file, A Plugin's Configuration File Is Faulty will help.
Premium Plugin Finds No Valid License Key
What the message looks like:
No License Key Found!
Please enter a valid key in license.yml
Authentication failed! API key is invalid
What's behind it: The plugin is a premium plugin or needs a key from the provider, and finds no valid one in its configuration. It then disables itself completely or switches off individual features. The server keeps running, just without this plugin's features.
How to fix it:
- Find the key from your purchase, for example in your account on the site where you bought the plugin, or ask the provider.
- Under Files, open the file named in the message, usually
plugins/<Plugin>/license.ymlorplugins/<Plugin>/config.yml, and enter the key. - Save the file and restart the server.
- If you don't have a key, remove the plugin under Plugins instead of letting it run permanently with errors.
Good to know: Only download premium plugins from the official sales page. Versions from unofficial sources with the license check removed often contain malware.
Plugin's Telegram Bot Doesn't Start
What the message looks like:
Error removing old webhook
What's behind it: A plugin with a Telegram connection logs in to Telegram with a bot on startup. In doing so, it first removes an old webhook, meaning a stored address to which Telegram would send new messages. This failed, usually because the bot token is invalid or Telegram was temporarily unreachable. The Telegram feature stays off, while the Minecraft server keeps running normally.
How to fix it:
- In Telegram, open the chat with @BotFather and have it show you your bot's token or generate a new one.
- Under Files, open the plugin's configuration under
plugins/<Plugin>/and replace the token. Copy it completely; a bot token begins with a number and a colon. - Save the file and restart the server.
- Check in the Console whether the message no longer appears.
Good to know: If the message appears only once and not again on the next start, Telegram was briefly unreachable. In that case you don't need to change anything.
Plugin Cannot Get Its Own Network Port
What the message looks like:
Failed to bind to /<Address>:<Port>
[PlasmoVoice] Failed to start the udp server
What's behind it: Some plugins open their own network port, for example for a voice chat like Plasmo Voice or for a website with a map or statistics. The configured address or port is not available on your server: the port isn't assigned to it, is already in use, or the configuration contains a fixed IP address that the server can't use that way. The plugin's feature stays off, while the rest of the server keeps running.
How to fix it:
- Under Files, open the plugin's configuration under
plugins/<Plugin>/and look for the port and address entries. - Enter a port that is assigned to your server in the panel and still free.
- Leave the address empty or set
0.0.0.0. This means: reachable on all of the server's network interfaces. - Save the file, restart the server and check in the Console whether the message no longer appears.
Good to know: Only one program can open a port at a time. If two plugins use the same one, each needs its own. More about ports: Checking Minecraft Ports and Connection Errors.
Plugin or Extra Service Cannot Open Its Port
What the message looks like:
[<Plugin>] Failed to start HTTP server: Address already in use
java.net.BindException: Address already in use
What's behind it: A plugin or an extra service such as voice chat, a web page, query or RCON tries to open a port that is already in use. Often its configuration contains the game port, which the server already opened itself at startup. The server keeps running and players can join; only this one feature stays off.
How to fix it:
- In the Console, read the name in square brackets before the message, for example
[<Plugin>]. Server health also shows it under "Affected plugin or service". - Under Files, open the configuration under
plugins/<Plugin>/and look for the port entry. For query and RCON, these arequery.portandrcon.portinserver.properties. - Enter a port that is not the game port and that no other plugin uses. The Ports tab lists all ports of your server.
- For Simple Voice Chat and other known plugins, the assistants under Plugins set up a free port automatically.
- Save, restart the server and check the Console to see whether the message is gone.
Good to know: A restart alone doesn't help while the configuration keeps the same port. More about ports: Checking Minecraft Ports and Connection Errors.
DonatePay: illegal character in the request address
What the message looks like:
java.net.URISyntaxException: Illegal character in query at index <Position>: <Address with token removed>
What's behind it: The DonatePay integration wants to check for new donations but cannot parse the address it has built. A URI is a structured address; its query component contains an illegal character here. The donation query therefore fails while the Minecraft server keeps running.
How to fix it:
- Open the Console or
logs/latest.logunder Files and check whether the error trace names the DonatePay integration. - Check the plugin configuration under Files. Compare the credentials with the documentation and remove accidentally copied spaces or quotation marks.
- Update the integration under Plugins, or replace its manually uploaded file under Files. Fully restart the server.
- If the message remains, send the sanitized error trace to the plugin author. Remove every token value before sharing it.
Backpack plugin cannot use its resource pack
What the message looks like:
[ᴠᴢʙᴀᴄᴋᴘᴀᴄᴋ] Die URL der Datei '<File>.zip' ist ungültig!
What's behind it: The plugin cannot use a configured resource pack file. Either its address is invalid or the external pack is rejected as faulty. Backpack visuals consequently have missing or incorrect textures and fonts; the server keeps running.
How to fix it:
- Under Files, inspect the plugin configuration to identify the configured pack file and address.
- Compare the file against the instructions for your plugin release. Use a valid direct download address and a complete archive matching that release.
- Fully restart the server. Let a client load the corrected pack again, then check backpack textures and fonts.
libdatachannel: A data channel connection or send operation fails
What the message looks like:
[tel.schich.libdatachannel.LibDataChannel] SCTP connection failed
[tel.schich.libdatachannel.LibDataChannel] SCTP sending failed, errno=104
What's behind it: libdatachannel is a library for data connections. SCTP is the transport protocol used by the connection. A connection fails to establish or can no longer send, interrupting the affected plugin connection. The game server keeps running.
How to fix it:
- Retry the affected connection. Check whether this affects a single join attempt or several connections.
- Read the preceding and following Console lines. Identify the plugin using the library from those messages.
- Compare its network settings and requirements with its documentation, especially the required ports and whether the remote endpoint can be reached.
- Check Plugins for a compatible update. If the error persists, open a ticket with the time and surrounding messages.
Netty: A network notification reaches a terminated executor
What the message looks like:
Failed to submit a listener notification task. Event loop shut down?
java.util.concurrent.RejectedExecutionException: event executor terminated
What's behind it: Netty processes network tasks in an event loop. Here the loop has already terminated when another notification is submitted. That notification is discarded. This can accompany shutdown; during normal operation, a network feature may be impaired.
How to fix it:
- Check the time in the Console and compare it with server startup or shutdown.
- If this occurs during normal operation, save the full message from
logs/latest.logwith earlier errors. The following call lines form a stack trace and may identify the component involved. - Check that component under Plugins and the server Version for compatible updates. Replace files with the server stopped.
- Fully restart and retry the affected connection. If the error remains, open a ticket with the time and complete message.
Your message isn't listed?
Read the whole message in the Console or in logs/latest.log, including the lines before it. The name in square brackets at the start of the line, such as [DiscordSRV], usually names the plugin. If it's missing, the stack trace helps: the indented lines with at … contain package and folder names that point to the plugin or mod. The plugin's project page explains which keys, tokens or ports it needs. Create a backup before changing the configuration. If you get stuck, open a ticket and include the time of the message.
You can order a matching server here: Rent Minecraft server.