如何通过代码运行Java命令?

时间:2014-02-20 09:59:13

标签: java

我正在尝试执行以下代码

String command="cmd /c ls";
String location="C:\\project";

final Process process = Runtime.getRuntime().exec(
     dosCommand + " " + location);

我正在获取文件,但是当我运行 cmd / c java 时,我没有得到输出。
我的Java主页被添加到环境变量中 当我在命令提示符下给Java时,我得到了Java相关文件。我没有通过我的计划。

2 个答案:

答案 0 :(得分:0)

我假设你想在Java程序中通过命令行运行Java程序?试试这个:

Runtime rt = Runtime.getRuntime();
Process pr = rt.exec("java ...");

http://docs.oracle.com/javase/7/docs/api/java/lang/Runtime.html

假设您使用的是Java 1.5或更高版本,如果您想从不同的路径执行,我建议您使用ProcessBuilder。它允许您轻松设置进程的工作目录。

final Process pr = new ProcessBuilder(
    "java", 
    "-Xms512M",
    "-Xmx1024M",
    "-jar", 
    "your_jar_to_use.jar", 
    "your Java class") 
    .directory(new File("<your directory>")) //Set the working directory to <your directory> 
    .start();

答案 1 :(得分:0)

或者更好的是,使用Java编译器API,如this articlethis one中所示。