我有以下重启方法,它正在运行:
public static void restart(String[] args) {
ArrayList<String> commands = new ArrayList<String>();
List<String> jvmArgs = ManagementFactory.getRuntimeMXBean().getInputArguments();
// Java
commands.add(System.getProperty("java.home") + File.separator + "bin" + File.separator + "java");
// Jvm arguments
for (String jvmArg : jvmArgs) {
commands.add(jvmArg);
}
// Classpath
commands.add("-cp");
commands.add(ManagementFactory.getRuntimeMXBean().getClassPath());
// Class to be executed
commands.add(BaseUI.class.getName());
// Command line arguments
File workingDir = null; // Null working dir means that the child uses the same working directory
String[] env = null; // Null env means that the child uses the same environment
String[] commandArray = new String[commands.size()];
commandArray = commands.toArray(commandArray);
try {
Runtime.getRuntime().exec(commandArray, env, workingDir);
System.exit(0);
} catch (IOException e) {
e.printStackTrace();
}
}
我想将Look And Feel配置放在我的主应用程序的main方法上,但是,在重新启动时,执行不会进入代码的那一部分。所以,显然,外观并没有改变。 有没有解决方法可以解决这个问题?