我正在尝试执行以下代码
String command="cmd /c ls";
String location="C:\\project";
final Process process = Runtime.getRuntime().exec(
dosCommand + " " + location);
我正在获取文件,但是当我运行 cmd / c java 时,我没有得到输出。
我的Java主页被添加到环境变量中
当我在命令提示符下给Java时,我得到了Java相关文件。我没有通过我的计划。
答案 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 article和this one中所示。