【发布时间】:2014-08-01 13:48:50
【问题描述】:
我想制作一个打开另一个java程序的程序。如何在编译和运行java程序时运行/执行cmd命令。
例如 c:\Users\Burnok> javac HelloWorld.java 和 c:\Users\Burnok> java HelloWorld
如何在 java 程序中做到这一点?请帮忙。
我尝试了这段代码,但它编译成功,但如果我尝试运行 HelloWorld.class,它会说找不到或加载主类。
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import javax.tools.JavaCompiler;
import javax.tools.ToolProvider;
public class Test {
private static void printLines(String name, InputStream ins) throws Exception {
String line = null;
BufferedReader in = new BufferedReader(
new InputStreamReader(ins));
while ((line = in.readLine()) != null) {
System.out.println(name + " " + line);
}
}
private static void runProcess(String command) throws Exception {
Process pro = Runtime.getRuntime().exec(command);
printLines(command + " stdout:", pro.getInputStream());
printLines(command + " stderr:", pro.getErrorStream());
pro.waitFor();
}
public static void main(String[] args) {
try {
runProcess("javac src/HelloWorld.java");
runProcess("java src/HelloWorld");
} catch (Exception e) {
e.printStackTrace();
}
}
}
这是错误 java src/HelloWorld stderr:错误:找不到或加载主类 src.HelloWorld
【问题讨论】:
-
我尝试过,但如果我尝试运行 .class,它会说找不到或加载主类。
-
您能准确地发布您尝试过的内容吗?
-
@sujithvm 我更新了我的帖子。谢谢。:)
标签: java