1
import java.io.IOException;

public class Test1_Exec {
    public static void main(String[] args) throws IOException {
        Runtime run = Runtime.getRuntime();
        try {
            Process p = run.exec("java Test1");
        } catch (IOException e) {
            e.printStackTrace();
        } 
    }
}


import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class Test1 {
    public static void main(String[] args)
    {
        FileOutputStream fOut = null;
        try {
            fOut = new FileOutputStream("d:\\ppp\\Test1.txt");
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        try {
            fOut.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
        System.out.println("invoked successfully");
    }
}

问题是如果我在Eclipse中运行Test1_Exec,Test1.txt没有创建,也没有报错。但是,如果我在命令窗口中键入“java Test1”,则会创建 Test1.txt。Test1_Exec.java 和 Test1.java 在同一个 src 文件夹中;Test1_Exec.class 和 Test1.class 在同一个 bin 文件夹中。那么Eclipse有什么问题呢?我的 Eclipse 版本是 Kepler(20130614-0229)。

4

2 回答 2

3

bin文件夹放在你的classpath

Process p = run.exec("java -cp path/to/bin Test1");

目前,正在您的项目目录java中寻找。Test1.class

于 2013-07-02T11:35:39.097 回答
0

您不需要在命令中提供 Test1 的完整路径吗?即:“java c:\code\Test1”?

于 2013-07-02T11:36:01.443 回答