Skip to content

Commit f33c6ea

Browse files
committed
Launcher will now read information from build.info
1 parent abe95b6 commit f33c6ea

File tree

1 file changed

+62
-9
lines changed

1 file changed

+62
-9
lines changed

RenJavaLauncher/Program.cs

Lines changed: 62 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,72 @@ public static void Main(string[] args)
88
Console.WriteLine("Current Directory: " + directoryPath);
99
DirectoryInfo directoryInfo = new DirectoryInfo(directoryPath);
1010
FileInfo[] files = directoryInfo.GetFiles("*.jar");
11-
foreach (FileInfo file in files)
11+
12+
Console.WriteLine("Scanning for build info.");
13+
DirectoryInfo renJavaDirectory = new DirectoryInfo(directoryPath + "\\renjava\\");
14+
if (renJavaDirectory.Exists)
1215
{
13-
Console.WriteLine("Executing jar: " + file.Name);
14-
var processInfo = new ProcessStartInfo(Directory.GetCurrentDirectory() + "\\jdk\\windows\\bin\\javaw.exe", "-jar " + file.Name)
16+
Console.WriteLine("RenJava Directory exists...");
17+
}
18+
FileInfo[] renJavaFiles = renJavaDirectory.GetFiles("build.info");
19+
Console.WriteLine("Detected Files: " + renJavaFiles.Length);
20+
String jarFile = "";
21+
try
22+
{
23+
StreamReader sr = new StreamReader(renJavaFiles[0].FullName);
24+
String line = sr.ReadLine();
25+
while (line != null)
1526
{
16-
CreateNoWindow = true,
17-
UseShellExecute = true,
18-
};
19-
if (processInfo != null)
27+
Console.WriteLine("Line: " + line);
28+
if (line.StartsWith("file="))
29+
{
30+
line = line.Replace("file=", "");
31+
Console.WriteLine("File = " + renJavaFiles[0].Name);
32+
jarFile = line;
33+
}
34+
line = sr.ReadLine();
35+
}
36+
37+
sr.Close();
38+
} catch(Exception ex)
39+
{
40+
Console.WriteLine("Exception: " + ex.Message);
41+
} finally
42+
{
43+
Console.WriteLine("Completed...");
44+
}
45+
46+
47+
Console.WriteLine("Looking for Jar File...");
48+
foreach (FileInfo file in files)
49+
{
50+
Console.WriteLine("Jar File: " + jarFile);
51+
Console.WriteLine("File: " + file.Name);
52+
53+
if (jarFile.Length != 0 && jarFile.Equals(file.Name)) {
54+
executeFile(file);
55+
break;
56+
} else if (jarFile.Length == 0)
2057
{
21-
Process process = Process.Start(processInfo);
58+
executeFile(file);
59+
break;
2260
}
23-
break;
61+
}
62+
}
63+
64+
private static void executeFile(FileInfo file)
65+
{
66+
Console.WriteLine("Processing " + file.Name);
67+
68+
Console.WriteLine("Executing jar: " + file.Name);
69+
var processInfo = new ProcessStartInfo(Directory.GetCurrentDirectory() + "\\jdk\\windows\\bin\\javaw.exe", "-jar " + file.Name)
70+
{
71+
CreateNoWindow = true,
72+
UseShellExecute = true,
73+
};
74+
if (processInfo != null)
75+
{
76+
Process process = Process.Start(processInfo);
2477
}
2578
}
2679
}

0 commit comments

Comments
 (0)