EcoCityCraft/Spigot-Server — pull request #55 by agaricusb (2013-03-29 06:02:36+00:00)
Title: Update to Java 6

Updates Spigot to build with Java 6 instead of Java 5.

Java 1.5 was released in 2004 and end-of-lifed on November 3rd, 2009.

All non-obsolete platforms support Java 6 or newer. Java 1.5 does not even register on http://mcstats.org/global-stats.php#Java+Version (87% Java 7, 12% 6, and 0.51% 8).

The only reason to use Java 5 is for PowerPC support on OS X, but this platform is also obsolete since the Intel transition in 2006. Some clients still use it but approximately zero servers run on PPC. Mojang is scheduled to drop Java 5 support for the next major release:

> Why are you removing support for Java 5 and PowerPC?
Support is being removed so that a number of important updates can be made, and will, among other things, prevent crashing in certain situations, bolster Linux support, and cause Minecraft to run and render faster. Java 5 is no longer being supported by lwjgl (Lightweight Java Game Library; the code library that allows Java to interact with your computer's graphics card), and PowerPC is no longer being supported by Apple.

Have not benchmarked this change but "cause Minecraft to run faster" sounds like something Spigot could get ahead of the curve on :)

Note that although the "vanilla" code (mc-dev org.bukkit.minecraft-server shaded dependency) remains Java 5 in the compiled server, there are no compatibility issues with mixing Java 5 and Java 6.

In fact, Minecraft Forge (another modification) has been requiring Java 6 (on both client and server) for as long as I can determine. MCPC (a CraftBukkit derivative) is also built for Java 6, for this same reason, possibly since day one. No compatibility problems have been found in these scenarios, very similar to Spigot's.

Even though most server owners are running at least Java 7, this PR doesn't go that far since a sizable number still use Java 6. But (almost?) no one runs Java 5.