Allows passing in the main robot class from the command line (#1091)

This commit is contained in:
Thad House
2018-05-24 17:05:58 -07:00
committed by Peter Johnson
parent 86c1f8ae50
commit fb45a5b314
2 changed files with 14 additions and 9 deletions

View File

@@ -227,19 +227,23 @@ public abstract class RobotBase implements AutoCloseable {
HAL.report(tResourceType.kResourceType_Language, tInstances.kLanguage_Java);
String robotName = "";
Enumeration<URL> resources = null;
try {
resources = RobotBase.class.getClassLoader().getResources("META-INF/MANIFEST.MF");
} catch (IOException ex) {
ex.printStackTrace();
}
while (resources != null && resources.hasMoreElements()) {
if (args.length > 0) {
robotName = args[0];
} else {
Enumeration<URL> resources = null;
try {
Manifest manifest = new Manifest(resources.nextElement().openStream());
robotName = manifest.getMainAttributes().getValue("Robot-Class");
resources = RobotBase.class.getClassLoader().getResources("META-INF/MANIFEST.MF");
} catch (IOException ex) {
ex.printStackTrace();
}
while (resources != null && resources.hasMoreElements()) {
try {
Manifest manifest = new Manifest(resources.nextElement().openStream());
robotName = manifest.getMainAttributes().getValue("Robot-Class");
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
System.out.println("********** Robot program starting **********");