|This article may need cleanup to meet quality standards.|
The Minecraft launcher is the login and downloader front-end to the stand-alone client. It is responsible for downloading the main Java packages, including minecraft.jar and LWJGL, which holds the code and resources of the game such as textures. It also acts somewhat like a basic and easily bypassable copy-restriction by forcing the user to login to a paid account when running for the first time. It has been part of the stand-alone client since its inception. It is possible to use the launcher to run versions of Minecraft since Indev.
There have been four different development stages for the launcher, the first for the Alpha version, the second since the release of Minecraft 1.0, the third since 1.2, and the fourth and current 1.6 Launcher. The launcher's design last changed on July 18, 2013.
Every time the launcher is executed, it checks a specific directory where Minecraft stores its files called .minecraft. It checks a file called "launcher_profiles.json" for login credentials. If the file does not exist, is corrupt, or no user is logged in, the user must login with a valid premium account, otherwise the game will refuse to run.
When logging in, the launcher will first try to verify the login. If a valid "launcher_profiles.json" file exists but there is no internet connection, the launcher will offer a "Play offline" mode if a player was logged in when it was last closed. If the connection is successful, the launcher will then, depending on profile options, compare the latest version in the latest "versions" directory to the latest version reported by the server. If the selected version does not exist or the latest installed version is outdated when "Use latest version" is selected in the profile, the launcher will download all Minecraft components and Java binary files. It will also synchronize everything in the Assets folder (see Resource pack)
Finally, upon a successful update or installation, the launcher will execute "minecraft.jar" (via "javaw.exe", Oracle's Java Virtual Machine executable.) It is possible however for there to be missing ".jar" files, in which case the launcher will attempt to replace the missing files automatically but will stop if there is no connection.
Currently, Minecraft launcher supports only English. Users cannot select their preferred language.
 Command-line usage
minecraft.jar (all systems):
java -cp minecraft.jar net.minecraft.LauncherFrame <username> <password> <server:port>
minecraft.exe (Windows executable):
minecraft.exe <username> <password> <server:port>
minecraft.jar (Windows - no CMD window):
javaw -cp minecraft.jar net.minecraft.LauncherFrame <username> <password> <server:port>
As of the new launcher released with Minecraft 1.2.3, username and password options use a prefix.
--username=<username> or -u=<username> --password=<password> or -p=<password>
If using a server:port it must still be the 3rd option. So if not used with username and password, dummy options need to be added in their place.
No update option also added.
 1.6 Launcher
A new version of the launcher was released on April 18, 2013 (with snapshot 13w16a). It lets users choose the version they want to play, downloads all resources before launching the game and updates additional libraries (function previously unavailable). Later it will have more functionality as it currently is in its early development stage. Demo is available to non-premium users after a successful login. The launcher can automatically update itself; the most recent version is 1.3.4.
- Manage multiple profiles. Each profile can control:
- Game version. Includes access to outdated development builds and previous releases. You can also add older/custom versions manually.
- Mojang account used to play the game
- Command line arguments for Java (such as heap size)
- Game Directory (where the game files are saved on disk)
- And so on.
- The launcher doesn't store your password locally. Instead of this, it now uses a 'refresh token'.
- Automatic updates for launcher.
- Ability to update libraries, such as LWJGL.
- Offline mode. (The first time launch requires an Internet connection to download required resources)
- Currently only available in English.
- Crashes can be reported to Mojang, through Hopper.
- Crashes are now indexed through a database for information on how to fix the issue.
 Time Machine
On August 1, 2013, the Minecraft launcher was updated to include the ability to play old Alpha and Beta versions of the game. Currently, Alpha, Beta, and Minecraft versions 1.0.0-1.6.4 are available to play. Classic, Indev, and Infdev versions are already added under the names "old-alpha version".
To enable the old versions either click the "Edit Profile" button or, preferably, create a new one. Under the "Version Selection" section choose to allow use of Alpha and/or Beta versions by ticking the appropriate boxes. Next, select the desired version from the drop-down menu and save the profile.
However, these versions are very out of date and some may be unstable. Any bugs, crashes, missing features, or other glitches will never be fixed in those versions. Mojang strongly recommends that you play them in separate directories to your other saves to avoid corruption.
 Command-line usage
MinecraftDev.jar (all systems):
java -cp Minecraft.jar net.minecraft.bootstrap.Bootstrap <username> <server:port>
The 1.6 launcher also added some new commands, for the launcher. These are shown if you do
java -jar Minecraft.jar -help
|Launcher version||Release date||Summary of changes|
|1.3.5||December 4, 2013||
|1.3.4||November 26, 2013||
|1.3.3||November 20, 2013||
|1.3.2||November 18, 2013||
|1.3.1||October 29, 2013||
|1.2.8||October 25, 2013||
|1.2.7||October 18, 2013||
|1.2.6||October 17, 2013||
|1.2.5||September 23, 2013||
|1.2.4||September 19, 2013||
|1.2.3||September 12, 2013||
|1.2.2||September 3, 2013||
|1.2.1 (Files uploaded)||August 6, 2013|
|1.2.1 (Files uploaded)||August 6, 2013||
|1.2.1||August 2, 2013|
|1.2||August 1, 2013|
|1.1.4||July 31, 2013||
|1.1.3||July 27, 2013||
|1.1.2||July 22, 2013||
|1.1.1||July 19, 2013||
|1.0.10||July 12, 2013||
|1.0.9||July 10, 2013||
|1.0.8 OS X (Re-upload) ||July 9, 2013||
|1.0.8 OS X (Re-upload) ||July 8, 2013||
|1.0.8||July 02, 2013|
|1.0.7||July 02, 2013||
|1.0.6||July 01, 2013||
|1.0.5||July 01, 2013||
|1.0.4||June 28, 2013||
|1.0.3||June 27, 2013||
|1.0.2||June 27, 2013||
|1.0.1||June 26, 2013||
|1.0.0||June 26, 2013||
|1.0.1||June 26, 2013||
|1.0||June 25, 2013||
|0.9.5||June 18, 2013||
|0.9.4||June 18, 2013||
|0.9.3||June 14, 2013|
|0.9.2||June 13, 2013|
|0.9.1||June 10, 2013||
|0.9||June 10, 2013||
|0.8.3||June 7, 2013|
|0.8.2||May 27, 2013|
|0.8.1||May 21, 2013|
|0.8||May 20, 2013||
|0.7.2||May 15, 2013||
|0.7||May 13, 2013||
|0.7.1||May 4, 2013||
|0.7||May 2, 2013|
|0.6||April 25, 2013|
|0.5||April 23, 2013||
|0.4||April 23, 2013||
|0.3||April 22, 2013||
|0.2||April 19, 2013||
|0.1||April 18, 2013||* .minecraft directory structure is changed:
|1.0.0||Initial release. In this version users can choose not only the current version but also Infdev.|
|1.3||(Client/Launcher Update) Added official links, community links and twitter links.|
|Added command line argument support.|
|1.1||Released in February 21, 2011.|
|Now uses new Minecraft logo.|
|Added capability of automatic login to the game and/or server by command line arguments.|
|Added smarter update system that only updates changed files, prompts the user to update, allows HTTPS logins for a more secure connection, and offers general UI improvements. A technical sneak preview was published by Notch on February 18, 2011.|
|Link to the Minecraft install directory for easy access.|
|Add Force Update button under the Options dialog.|
|The launcher also featured an inline "changelog" via a Tumblr called MCUpdate, and supports command-line arguments.|
|1.2.1||Properly selects 64-bit Java installations for Mac OS X users.|
|1.3.2||Added ability to launch demo mode for non-premium users.|
 See also