【发布时间】:2014-03-17 16:16:34
【问题描述】:
我尝试使用 netbeans 在question 中运行已接受的答案。类文件已创建但未执行。 这是我的代码
import java.io.*;
public class Laj {
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();
System.out.println(command + " exitValue() " + pro.exitValue());
}
public static void main(String[] args) {
try {
runProcess("javac /home/shibin/NetBeansProjects/JavaApplication3/src/javaapplication3/Main.java");
Thread.sleep(1000);
runProcess("java /home/shibin/NetBeansProjects/JavaApplication3/src/javaapplication3/Main");
} catch (Exception e) {
e.printStackTrace();
}
}
}
Main.java 只是一个打印语句,
public class Main {
public static void main(String[] args) {
System.out.println("Done");
}
}
我遇到了错误
javac /home/shibin/NetBeansProjects/JavaApplication3/src/javaapplication3/Main.java exitValue() 0
java /home/shibin/NetBeansProjects/JavaApplication3/src/javaapplication3/Main stderr: Error: Could not find or load main class
.home.shibin.NetBeansProjects.JavaApplication3.src.javaapplication3.Main
java /home/shibin/NetBeansProjects/JavaApplication3/src/javaapplication3/Main exitValue() 1
【问题讨论】:
-
同时粘贴你的 Main.java
-
在您的代码中使用这些命令行之前,您是否测试过它们?问题就在那里:执行器正在寻找包 home.shibin.NetBeansProjects.JavaApplication3.src.javaapplication3(类路径问题)
-
这段代码在使用终端执行时运行良好。使用 netBeans 时,在 home.shibin.NetBeansProjects.JavaApplication3.src.javaapplication3 文件夹中创建了 Class 文件,但不执行。