如何运行另一个目录中的.class文件

时间:2010-10-07 15:16:32

标签: java exec

我的问题是如何使用exec()或ProcessBuilder类在目录中运行.class java文件。这仅在.class文件位于同一目录(作为java程序)时才有效。

2 个答案:

答案 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);