Een Minecraft-server die een seconde na het starten weer sluit, lijkt een mysterie en is dat bijna nooit. De server print de reden voordat hij stopt, in de console of in logs/latest.log, en in de overgrote meerderheid van de gevallen noemt die regel het probleem rechtstreeks. Deze gids behandelt de vijf oorzaken achter bijna elke mislukte start, hoe je elk herkent aan de foutmelding, en wat je moet veranderen.
Lees het log voordat je iets verandert
Open logs/latest.log in de servermap en scroll helemaal naar beneden. De laatste paar regels, en de eerste regel van de laatste stacktrace, vertellen je welke van de onderstaande oorzaken je hebt. Gokken is wat een reparatie van twee minuten in een hele avond verandert, want elke oplossing hier is anders en geen ervan helpt bij de andere.
Op FluxCraft staan de console en het logbestand allebei in het dashboard, zodat je de crash kunt lezen zonder SSH of bestandsoverdracht. Als de server in een lus opnieuw opstart, staat het log van de vorige poging in logs/ als tijdgestempeld archief.
| Wat het log zegt | Oorzaak | Sectie hieronder |
|---|---|---|
| "Je moet de EULA accepteren" | EULA niet geaccepteerd | Oorzaak 1 |
| "Unsupported class file major version" of UnsupportedClassVersionError | Verkeerde Java-versie | Oorzaak 2 |
| "Could not reserve enough space for object heap" of OutOfMemoryError | Geheugen verkeerd ingesteld | Oorzaak 3 |
| „FAILED TO BIND TO PORT” of „Address already in use” | Poort al in gebruik | Oorzaak 4 |
| Een stacktrace die een specifieke mod of plugin noemt | Conflict tussen mods of plugins | Oorzaak 5 |
Oorzaak 1: de EULA is niet geaccepteerd
Bij de allereerste start maakt de server eula.txt aan, toont een melding over het akkoord gaan met de licentie van Mojang, en stopt meteen. Dit is verreweg de meest voorkomende reden dat een gloednieuwe server "niet werkt", en het is helemaal geen fout: de server wacht op jou.
Open eula.txt, verander eula=false in eula=true, sla op en start opnieuw. Verder doet er niets toe in het bestand. Bij een beheerde host wordt de EULA meestal bij het deployen voor je geaccepteerd, daarom pakt dit vooral mensen die een server handmatig opzetten.
Oorzaak 2: de Java-versie is verkeerd
Dit is de storing die mensen het meest in verwarring brengt, omdat het niet op een versieprobleem lijkt. De server gooit UnsupportedClassVersionError, of klaagt over een „Unsupported class file major version”, en stopt. Het betekent dat de jar gecompileerd is voor een nieuwere Java-versie dan die waarmee je hem draait.
De systeemeis is een minimum, geen exacte match. Een oudere Minecraft draait prima op een nieuwere Java. Het misgaat alleen in de andere richting: een nieuwere Minecraft op een oudere Java. Modded servers erven de eis van de gameversie waarop hun Forge-, NeoForge- of Fabric-build is gericht.
- Controleer wat je echt hebt met "java -version". Op een machine met meerdere JDK's is degene op je PATH niet altijd degene die je denkt.
- Als de fout major version 65 noemt en je hebt Java 17, dan heb je Java 21 nodig. Installeer de bijpassende LTS-build en wijs je startscript er expliciet naar in plaats van op PATH te vertrouwen.
- Bij een beheerde host regelt de image dit, dus de juiste serverversie in het dashboard kiezen is de hele oplossing.
| Minecraft-versie | Minimale Java-versie | Klassenbestand-hoofdversie in de foutmelding |
|---|---|---|
| 26.1 en nieuwer | Java 25 | 69 |
| 1.20.5 to 1.21.11 | Java 21 | 65 |
| 1.18 to 1.20.4 | Java 17 | 61 |
| 1.12 to 1.17 | Java 8 | 52 |
Oorzaak 3: het geheugen is verkeerd ingesteld, niet alleen onvoldoende
Twee verschillende geheugenfouten laten een start mislukken en ze betekenen het tegenovergestelde. "Could not reserve enough space for object heap" bij het starten betekent dat je in -Xmx meer RAM hebt gevraagd dan de machine kan leveren, waardoor de JVM nooit start. Een OutOfMemoryError halverwege het opstarten betekent dat de waarde te laag is voor wat je laadt, wat bij een grote modpack heel makkelijk gebeurt.
Stel -Xmx in op een waarde die de machine daadwerkelijk heeft, met ruimte voor het besturingssysteem en de JVM-overhead, in plaats van elke byte toe te wijzen. Op een machine met 4 GB is -Xmx3G verstandig en -Xmx4G niet. Vanilla heeft minstens 2 GB nodig; een medium modpack 8 GB en een zware 16 GB of meer.
Een veelvoorkomende zelfveroorzaakte variant hiervan is het kopiëren van een startscript uit een tutorial die voor een andere machine is geschreven. Als je script -Xmx8G zegt en je machine heeft 4 GB, dan start de server nooit, ongeacht wat je verder ook oplost.
Oorzaak 4: de poort is al in gebruik
"FAILED TO BIND TO PORT" of "Address already in use" betekent dat iets anders de poort bezet houdt, en in negen van de tien gevallen is dat een eerdere instantie van je eigen server die niet netjes is afgesloten. Zoek naar een los java-proces en beëindig het voordat je opnieuw start.
De andere oorzaak is dat twee servers voor dezelfde poort zijn geconfigureerd. Java Edition gebruikt standaard TCP 25565 en Bedrock UDP 19132, dus als je beide op één machine draait botsen ze niet, maar twee Java-servers wel. Wijzig server-port in server.properties voor de tweede.
Bij een beheerde host krijgt elke deployment zijn eigen poort, dus dit soort fouten verdwijnt. Het is een zelfhostingprobleem.
Oorzaak 5: een mod of plugin verstoort de start
Als het log eindigt op een stacktrace die een bestand in plugins/ of mods/ noemt, heb je het gevonden. De gebruikelijke oorzaken zijn een plugin gebouwd voor een andere Minecraft-versie, een mod die een afhankelijkheid mist, of twee mods die niet samen kunnen. Ook de serversoftware doet ertoe: een Bukkit-plugin draait niet op vanilla, en een Forge-mod draait niet op Fabric.
Als de stacktrace niets bruikbaars noemt, gebruik dan bisecten. Haal alles uit de map, controleer of de server schoon start, voeg dan de helft terug en herstart. Vier of vijf van die rondes isoleren elk conflict, hoe groot de modpack ook is, en dat gaat veel sneller dan changelogs lezen.
Na een Minecraft-versie-upgrade moet je ervan uitgaan dat elke plugin een bijpassende update nodig heeft. De server-jar upgraden terwijl de plugins op de oude versie blijven, is de meest voorkomende manier waarop een werkende server stopt met opstarten.
Wanneer de server start maar niemand kan joinen
Dat is een ander probleem, en het log is dan schoon. Een server die opstart met „Done” draait; als spelers hem niet kunnen bereiken, ligt het aan het adres, de portdoorsturing of online-mode. Controleer of je mensen het volledige adres inclusief poort geeft, en of de poort die je hebt doorgestuurd overeenkomt met server-port in server.properties.
Op FluxCraft heeft je server een eigen publiek adres op een yourserver.app.runonflux.io-domein, dus er komt geen router aan te pas en is er niets door te sturen.
Een checklist om door te werken
In volgorde, want elke stap sluit de volgende uit:
- Open logs/latest.log en lees de laatste twintig regels. Vergelijk ze met de tabel bovenaan deze pagina.
- Controleer of eula.txt eula=true zegt.
- Voer "java -version" uit en controleer het tegen de versietabel hierboven.
- Controleer of -Xmx in je startscript ruim onder het fysieke RAM van de machine ligt.
- Zoek naar een losse java-proces dat de poort vasthoudt, en controleer of er geen tweede server dezelfde poort deelt.
- Als er in de trace een mod of plugin wordt genoemd, verwijder die. Als er niets wordt genoemd, halveer de map dan stap voor stap om het probleem te vinden.
- Werk na een versie-upgrade eerst elke plugin en mod bij naar een passende build voordat je iets anders de schuld geeft.
Een server die elke keer start
De juiste Java-versie, de EULA geaccepteerd, het geheugen ingesteld en de poort voor je opengezet. Kies een RAM-niveau en deploy binnen 30 seconden, met de console en logs op één klik. Eerste week gratis.
Veelgestelde vragen
Waarom start mijn Minecraft-server niet?
In bijna elk geval is het een van vijf dingen: de EULA is niet geaccepteerd, de Java-versie is te oud voor de server-jar, -Xmx vraagt om meer geheugen dan de machine heeft, een ander proces houdt de poort bezet, of een plugin of mod geeft een fout tijdens het laden. De laatste regels van logs/latest.log noemen welke het is.
Wat betekent "Unsupported class file major version"?
Het serverbestand is gecompileerd voor een nieuwere Java dan de versie die hem draait. Major version 69 betekent Java 25, 65 is Java 21, 61 is Java 17 en 52 is Java 8. Installeer de passende versie en wijs je startscript er direct naar, in plaats van op PATH te vertrouwen.
Mijn server stopt meteen zonder foutmelding. Wat is er aan de hand?
Bij een eerste start is dit bijna altijd de EULA. De server schrijft eula.txt, toont een melding over het accepteren van Mojangs licentie en stopt. Zet eula=true en start opnieuw. Als het niet de eerste start is, lees dan logs/latest.log, want er wordt iets afgedrukt, ook als het venster te snel sluit om het te zien.
Hoe los ik "Could not reserve enough space for object heap" op?
Verlaag de -Xmx-waarde in je startscript. Die fout betekent dat je de JVM om meer geheugen vraagt dan de machine kan leveren, dus start hij nooit. Laat ruimte voor het besturingssysteem: op een machine met 4 GB werkt -Xmx3G wel en -Xmx4G niet.
Hoe vind ik welke mod mijn server laat crashen?
Lees eerst de stacktrace aan het einde van latest.log, want die noemt meestal het bestand. Doet hij dat niet, gebruik dan bisecten: leeg de mods-map, controleer of de start schoon is, en voeg daarna per keer de helft terug. Vier of vijf herstarts isoleren elk conflict, ongeacht de grootte van de modpack.
Mijn server start niet meer nadat ik Minecraft heb bijgewerkt. Waarom?
Plugins en mods zijn gebouwd voor een specifieke Minecraft-versie en werken niet automatisch mee naar een nieuwere versie. De server-jar upgraden zonder ze bij te werken is de meest voorkomende reden dat een werkende server stukgaat. Werk elke plugin en mod bij naar een build die past bij de nieuwe versie, en controleer ook of de Java-vereiste is veranderd.
Wat betekent "FAILED TO BIND TO PORT"?
Er luistert al iets op de poort die de server wil gebruiken. Meestal is dat een eerdere instantie van dezelfde server die niet is afgesloten; beëindig het losse java-proces. Draai je twee Java-servers op één machine, wijzig dan server-port in server.properties voor de tweede.