I noticed that when downloading the Minecraft Server jar file, that the instructions say to run it with certain parameters, the last one specifying no GUI. I don't understand why Mojang would specifically say to run it that way when it works fine with the GUI. Also, when the GUI is on you can see a list of players, log and memory usage all at the same time. Can someone please tell me why they say to run it with no GUI.
Typically, most Minecraft servers will run not on your local computer, but on a remote client allowing everybody to connect to it, or otherwise some specialized server. Usually, when you're on one of these servers, you don't even have the capability for a GUI. Instead, you just have a terminal, which ends up looking something like this:
When the server is running like this, attempting to allocate resources for a GUI is a complete pain (although the system will usually pretend as though
nogui is there), and can (marginally) slow down your server.
Furthermore, upon first launch of the Minecraft server, the EULA isn't accepted. This causes the server to force-crash, leaving no indication as to why if you just clicked it. This can be confusing to new users of the server platform, and such an action is remedied by forcing you to use the console, which can also provide valuable information in the case of a crash.
Really, it just boils down to the console being more verbose, faster, and the more supported way of using the Minecraft Server on any platform, being your home computer or a professional server hosting hundreds of people. Plus, having the terminal open makes you look 25% cooler, at minimum.