我的问题是如何使用exec()或ProcessBuilder类在目录中运行.class java文件。这仅在.class文件位于同一目录(作为java程序)时才有效。
答案 0 :(得分:0)
你想要产生一个全新的过程吗?然后你应该使用
Runtime.getRuntime().exec(new String[] {"java","-cp","/path/to/classes/dir/","com.foo.MyClass"});
如果您想在同一个进程中使用某些内容,可以创建一个知道如何加载.class文件的新ClassLoader。然后,您可以使用反射从类加载器中获取类对象,并调用其“主”方法或类似的方法。您需要使用反射,因为该类在默认的类加载器中不可用。
答案 1 :(得分:0)
解决问题的人谢谢你们的答复......:)
解决方案我用过
String path =“D:\ work”; //我的程序执行路径
String program =“Test”; //我的程序名称
ProcessBuilder pb = new ProcessBuilder(“java”,“ - classpath”,path,program);