Skip to content

Commit 955ff06

Browse files
committed
allow no image, fix for minecraft run on Windows
1 parent b1e9cb7 commit 955ff06

File tree

3 files changed

+46
-24
lines changed

3 files changed

+46
-24
lines changed

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ repositories {
2828

2929
group = 'net.minecraftforgefrance'
3030
archivesBaseName = 'installer'
31-
version = '2.1.1'
31+
version = '2.1.2'
3232
targetCompatibility = '1.6'
3333
sourceCompatibility = '1.6'
3434

src/main/java/fr/minecraftforgefrance/installer/InstallerFrame.java

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
import java.awt.event.WindowEvent;
1414
import java.awt.image.BufferedImage;
1515
import java.io.File;
16-
import java.io.IOException;
1716
import java.net.URI;
1817

1918
import javax.imageio.ImageIO;
@@ -25,8 +24,6 @@
2524
import javax.swing.JOptionPane;
2625
import javax.swing.JPanel;
2726

28-
import com.google.common.base.Throwables;
29-
3027
import argo.jdom.JsonRootNode;
3128
import fr.minecraftforgefrance.common.EnumOS;
3229
import fr.minecraftforgefrance.common.FileChecker;
@@ -60,33 +57,36 @@ public InstallerFrame()
6057
}
6158
}
6259

63-
BufferedImage image;
60+
BufferedImage image = null;
6461
try
6562
{
6663
image = ImageIO.read(this.getClass().getResourceAsStream("/installer/logo.png"));
6764
}
68-
catch(IOException e)
65+
catch(Exception e)
6966
{
70-
throw Throwables.propagate(e);
67+
7168
}
7269

7370
final Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
7471

7572
JPanel panel = new JPanel();
7673
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
77-
ImageIcon icon = new ImageIcon(image);
78-
JLabel logoLabel = new JLabel(icon);
79-
logoLabel.setAlignmentX(CENTER_ALIGNMENT);
80-
logoLabel.setAlignmentY(CENTER_ALIGNMENT);
81-
if(image.getWidth() > dim.width || image.getHeight() + 10 > dim.height)
82-
{
83-
JOptionPane.showMessageDialog(null, LANG.getTranslation("err.bigimage"), LANG.getTranslation("misc.error"), JOptionPane.ERROR_MESSAGE);
84-
this.dispose();
85-
}
86-
else
74+
if(image != null)
8775
{
88-
logoLabel.setSize(image.getWidth(), image.getHeight());
89-
panel.add(logoLabel);
76+
ImageIcon icon = new ImageIcon(image);
77+
JLabel logoLabel = new JLabel(icon);
78+
logoLabel.setAlignmentX(CENTER_ALIGNMENT);
79+
logoLabel.setAlignmentY(CENTER_ALIGNMENT);
80+
if(image.getWidth() > dim.width || image.getHeight() + 10 > dim.height)
81+
{
82+
JOptionPane.showMessageDialog(null, LANG.getTranslation("err.bigimage"), LANG.getTranslation("misc.error"), JOptionPane.ERROR_MESSAGE);
83+
this.dispose();
84+
}
85+
else
86+
{
87+
logoLabel.setSize(image.getWidth(), image.getHeight());
88+
panel.add(logoLabel);
89+
}
9090
}
9191

9292
JPanel buttonPanel = new JPanel();

src/main/java/fr/minecraftforgefrance/installer/SuccessFrame.java

Lines changed: 27 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import java.awt.event.ActionEvent;
99
import java.awt.event.ActionListener;
1010
import java.io.File;
11+
import java.io.IOException;
1112

1213
import javax.swing.JButton;
1314
import javax.swing.JFrame;
@@ -53,13 +54,34 @@ public void actionPerformed(ActionEvent e)
5354
@Override
5455
public void actionPerformed(ActionEvent e)
5556
{
56-
try
57-
{
58-
Runtime.getRuntime().exec(EnumOS.getJavaExecutable() + " -jar " + Installer.frame.mcDir.getPath() + File.separator + "launcher.jar");
57+
File launcher = new File(Installer.frame.mcDir.getPath(), "launcher.jar");
58+
if(launcher.exists())
59+
{
60+
try
61+
{
62+
Runtime.getRuntime().exec(EnumOS.getJavaExecutable() + " -jar " + Installer.frame.mcDir.getPath() + File.separator + "launcher.jar");
63+
}
64+
catch(IOException ex)
65+
{
66+
ex.printStackTrace();
67+
JOptionPane.showMessageDialog(null, LANG.getTranslation("err.runminecraft"), LANG.getTranslation("misc.error"), JOptionPane.ERROR_MESSAGE);
68+
}
69+
}
70+
else if(EnumOS.getPlatform() == EnumOS.WINDOWS)
71+
{
72+
// fix for Minecraft installer on Windows
73+
try
74+
{
75+
Runtime.getRuntime().exec(EnumOS.getJavaExecutable() + " -jar " + "\"C:\\Program Files (x86)\\Minecraft\\game\\launcher.jar\"");
76+
}
77+
catch(IOException ex2)
78+
{
79+
ex2.printStackTrace();
80+
JOptionPane.showMessageDialog(null, LANG.getTranslation("err.runminecraft"), LANG.getTranslation("misc.error"), JOptionPane.ERROR_MESSAGE);
81+
}
5982
}
60-
catch(Exception ex)
83+
else
6184
{
62-
ex.printStackTrace();
6385
JOptionPane.showMessageDialog(null, LANG.getTranslation("err.runminecraft"), LANG.getTranslation("misc.error"), JOptionPane.ERROR_MESSAGE);
6486
}
6587
SuccessFrame.this.dispose();

0 commit comments

Comments
 (0)