Skip to content
Vicky Kumar edited this page Jun 7, 2025 · 1 revision

🖥️ Hosting Java & Bedrock Minecraft Servers on Windows — Summary

1. Prepare Your System

  • Ensure your Windows machine has enough RAM and CPU (8 GB RAM minimum recommended).
  • Close unnecessary programs to free resources.
  • Keep Windows updated.

2. Install Java Edition Server

  • Download the latest Java server .jar from Minecraft.net.
  • Place server.jar in its own folder (e.g., C:\Minecraft\JavaServer\).
  • Create start-java.bat with optimized JVM flags:
@echo off
title Minecraft Java Server
java -Xms5G -Xmx6G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=50 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -jar server.jar nogui
pause
  • Configure server.properties as needed.
  • Start the Java server to generate the world.

3. Install Bedrock Edition Server

  • Download the Bedrock server zip for Windows from Minecraft.net.
  • Extract to its own folder (e.g., C:\Minecraft\BedrockServer\).
  • Create start-bedrock.bat:
@echo off
title Minecraft Bedrock Server
cd /d "%~dp0"
bedrock_server.exe
pause
  • Edit server.properties for Bedrock as needed (e.g., set gamemode=creative).
  • Start the Bedrock server.

4. Resource Allocation

  • Since running both simultaneously on 8 GB RAM is tight, run only one server at a time for best performance.
  • Allocate RAM accordingly:
Server Type RAM Allocation
Java 5–6 GB (-Xmx5G to 6G)
Bedrock ~1.5 GB (native)
Windows + Other ~1.5–2 GB
  • If running both simultaneously, reduce Java RAM (e.g., 3G) and be mindful of lag.

5. Networking & Port Forwarding

  • Java default port: 25565
  • Bedrock default port: 19132 (UDP)

Options for public access:

  • Port Forward both ports on your router to your PC.

  • Use tunneling services like:

    • Playit.gg — supports both Java and Bedrock tunnels.
    • FRP or ngrok (with limitations on UDP).
    • Tailscale/ZeroTier VPN for private access.

6. Run & Manage

  • Launch servers via their respective .bat files.
  • Consider creating a master .bat launcher with a menu to choose which server to run.
  • Monitor CPU/RAM usage and adjust JVM flags as needed.
  • Regularly backup your worlds.

7. Optional: Use GeyserMC if You Want Cross-Play

  • If you want Bedrock players to join your Java server seamlessly, set up GeyserMC as a proxy.
  • This allows one world, one IP, but requires advanced config.

Final tip:

Run one server at a time if possible on an 8 GB machine to ensure smooth gameplay.