繁体   English   中英

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

[英]How to run a .class file that is in another directory

我的问题是如何使用exec()或ProcessBuilder类在目录中运行.class Java文件。 仅当.class文件位于与Java程序相同的目录中时,此方法才有效。

您想产生一个全新的过程吗? 那你应该用

Runtime.getRuntime().exec(new String[] {"java","-cp","/path/to/classes/dir/","com.foo.MyClass"});

如果您希望在同一过程中进行操作,则可以创建一个新的ClassLoader,该类知道如何加载.class文件。 然后,您可以使用反射从类加载器中获取类对象,并调用其“ main”方法或类似方法。 您需要使用反射,因为该类在默认的类加载器中不可用。

解决问题的人感谢您的答复... :)

我用过的解决方案

字符串路径=“ D:\\ work”; //我的程序执行的路径

字符串程序=“测试”; //我的程序名称

ProcessBuilder pb =新的ProcessBuilder(“ java”,“-classpath”,path,program);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM