Minecraft Server Start File Generator
1. Environment & Platform
2. Memory Allocation (RAM)
It is best practice to set -Xms and -Xmx to the same value to prevent lag spikes.
3. JVM Flags & GC Optimization
4. Additional Options
Disables the visual Java console window, saving resources.
Adds a loop so the server restarts automatically after a crash or /stop.
Automatically accepts the Mojang EULA on the first start.
Prevents the console window from closing instantly upon an error.
Generated Start File
Create a repeatable start command for your Minecraft server
A Minecraft Java server needs a clear launch command: which JAR should run, how much memory may Java use, and should the graphical interface open? This generator combines your choices into a Windows batch file, a Linux/macOS shell script or a command for a hosting panel. You can review the output, copy it or download the file.
The tool does not install Java, download server software or configure network access. Its purpose is to make your chosen launch settings reproducible. A small Survival server and a heavily modified public server can need different settings, so the output should reflect your actual software and available resources.
How to generate a server start file
- Select the environment. Choose Windows for
start.bat, Linux/macOS forstart.sh, or the panel option for a copyable launch command. - Enter the JAR filename. Match the actual name, including
.jar, and put the start file in the server folder. A simple filename without spaces avoids quoting issues in the generated command. - Allocate memory. Set the initial and maximum heap sizes, checking the MB or GB units. The initial value must not exceed the maximum.
- Choose a JVM profile. Options include Aikar profiles, proxy flags and no extra flags. Match the choice to your Java version and server software.
- Review additional options. Decide whether to disable the GUI, restart automatically or keep the terminal open after the process ends.
- Download and test. Save the file beside your server JAR and run it from a terminal. On Linux, use
chmod +x start.shbefore executing it, or launch it withsh start.sh.
Understand the Java arguments
Initial memory and maximum memory
-Xms sets the initial Java heap size, while -Xmx sets its maximum. For example, java -Xms2G -Xmx4G -jar server.jar nogui starts with a two-gigabyte heap and allows it to grow to four. The Java process also uses memory outside that heap, and the operating system and other services need memory too.
Do not allocate the machine’s entire physical RAM to Xmx. More heap does not fix an overloaded CPU, slow storage or an expensive plugin. View distance, simulation workload and the number of active chunks can matter more than a small memory increase. Observe the server under real load before making large changes.
What JVM profiles can and cannot do
Java’s garbage collector reclaims memory from objects that are no longer needed. JVM flags can adjust its behavior, but the offered profiles are fixed parameter sets. They do not inspect your plugins, detect your installed Java version or measure pauses. A performance-oriented profile is therefore not a guarantee of improved TPS.
If Java rejects an option, check the exact error against the documentation for your Java and server versions. A simple launch without extra flags can help isolate a profile problem from a missing JAR or incompatible Java runtime. Modded servers that provide their own scripts or argument files should retain that documented launch method.
Restart loops, EULA settings and hosting panels
Auto Restart creates a loop that launches the server again after the process ends. This also happens after an intentional stop. End the loop before maintenance or replacing files. Repeated restarts will not resolve a persistent configuration error; inspect the first meaningful terminal message instead.
The optional EULA setting adds an agreement parameter. Enable it only after reading and agreeing to the Minecraft EULA yourself. The generator cannot make that decision for you. Hosting panels may also control Java, memory limits and launch commands independently. Treat the panel output as a reference for the fields your provider exposes, then use the MOTD generator if you want to edit the server list description.
Frequently asked questions
Which Java version do I need?
Check the requirements of your Minecraft release and server software. The generator does not detect or install Java.
How much RAM should I allocate?
Consider players, active chunks, plugins and your system or panel budget. Leave memory for the operating system and Java allocations outside the heap.
Why does the server restart after I use stop?
Auto Restart puts the launch command in a loop. End that loop for maintenance, or turn the option off and generate a new script.
What does Unable to access jarfile mean?
Java cannot find or open the named file. Check the exact JAR filename, server folder, working directory and read permissions.
Can this start a Bedrock dedicated server?
No. The generated command launches Java and a JAR file. Bedrock Dedicated Server uses a different executable.