4

我有两个程序,我必须调用一个位于不同位置的程序,即调用程序在 d://start 中,被调用程序在 f://call 中。如何在java中做到这一点?

我可以在调用程序中使用这种方法来实现吗?

try
{
    Process p = Runtime.getRuntime().exec(
       new String[] {"cmd.exe", "/c", "F:/call.java"});

    InputStream in = p.getInputStream();
    OutputStream out = p.outputStream();
}

catch (IOException e)
{
  e.printStackTrace();
}
4

1 回答 1

2

exec您可以通过以下命令运行另一个 Java 程序:

Runtime.getRuntime().exec("java /directory/com/Main.java")
Runtime.getRuntime().exec("java -cp /directory/package.jar com.Main")

如果您需要在同一个 JVM 中调用该类的方法,您可以尝试在运行时加载 jar,然后反射性地调用这些类。

于 2012-11-29T13:54:54.590 回答