我正在尝试使用Runtime.exec生成一个进程。我想使用我当前的类路径:System.getProperty(“java.class.path”)
不幸的是,我有各种各样的问题。当它在我的mac上工作时,在Windows上就不工作了。当类路径中有一个空间的时候,我的mac就不工作了。我经常遇到的错误是ClassDefNotFound,因此它与我如何构建和传递类路径有关。
String startClass = "com.test.MyClass"
String javaHome = System.getProperty("java.home");
String javaCmd = javaHome + "/bin/java";
String classPath = "-Djava.class.path=" + System.getProperty("java.class.path");
String[] commands = new String[]{javaCmd, classPath, startClass};
String commandString = StringUtils.join(commands, " ");
Process process = Runtime.getRuntime().exec(commandString);
谢谢你的帮助