public void Launch() {
		 try {
			String OS = System.getProperty("os.name").toUpperCase();
			if(OS.contains("WIN")) {
				AppDataPath = System.getenv("APPDATA");
				LauncherName = "\\." + LauncherName;
				Slash = "\\";
			} else if(OS.contains("MAC")) {
				AppDataPath = System.getProperty("user.home") + "/Library/Application " + "Support";
				LauncherName = "/" + LauncherName;
				Slash = "/";
			} else if(OS.contains("NUX")) {
			    AppDataPath = System.getProperty("user.home");
			    LauncherName = "/." + LauncherName;
				Slash = "/";
			} else {
				AppDataPath =  System.getProperty("user.dir");
				LauncherName = "/." + LauncherName;
				Slash = "/";
			}
			
			System.out.println(AppDataPath);
			
			LauncherLocation = AppDataPath + LauncherName;
			LauncherJar = new File(LauncherLocation + Slash + "Launcher.jar");
			
			if(!new File(LauncherLocation).exists()) {
				new File(LauncherLocation).mkdir();
			}
			
			Clean(LauncherLocation + Slash);
			
			DownloadFiles(new URL(BootstrapVersionUrl), new FileOutputStream(LauncherLocation + Slash + "bootstrap.txt"));
			
			if(!fr.minepod.boostrap.ClassFile.ReadFile(LauncherLocation + Slash + "bootstrap.txt").startsWith(BootstrapVersion)) {
				JOptionPane.showMessageDialog(null, "Une nouvelle version est disponible: " + BootstrapNewVersionUrl, "Nouvelle version disponible", JOptionPane.WARNING_MESSAGE);
				System.exit(0);
			}
			
			DownloadFiles(new URL(GetMd5FileUrl + LauncherLatestVersionUrl), new FileOutputStream(LauncherLocation + Slash + "Launcher.md5"));
			
			if(!GetMd5.VerifyMd5(new File(LauncherLocation + Slash + "Launcher.md5"), LauncherJar)) {
				LauncherJar.delete();
				DownloadFiles(new URL(LauncherLatestVersionUrl), new FileOutputStream(LauncherJar));
			}
			
			
			new JarLoader(LauncherJar.getAbsolutePath());
			
			System.exit(0);
			
		} catch (IOException e) {
			e.printStackTrace();
			JOptionPane.showMessageDialog(null, e.toString(), "Erreur", JOptionPane.ERROR_MESSAGE);
			System.exit(0);
		} catch (Exception e) {
			e.printStackTrace();
			JOptionPane.showMessageDialog(null, e.toString(), "Erreur", JOptionPane.ERROR_MESSAGE);
			System.exit(0);
		}
	 }