Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法从其他java程序运行java程序_Java - Fatal编程技术网

无法从其他java程序运行java程序

无法从其他java程序运行java程序,java,Java,我正在尝试从另一个java程序(exec.java)运行一个java文件(editor.java)。它接受输入并显示“未找到文件”消息。请给我建议,以便我成功运行程序 import java.io.*; public class exec { public static void main(String argv[]) { try { InputStreamReader isr=new InputStreamReader(System.in);

我正在尝试从另一个java程序(exec.java)运行一个java文件(editor.java)。它接受输入并显示“未找到文件”消息。请给我建议,以便我成功运行程序

    import java.io.*;
    public class exec {

    public static void main(String argv[]) {
    try {
    InputStreamReader isr=new InputStreamReader(System.in);
    BufferedReader br=new BufferedReader(isr);

    System.out.println("Enter the java class name");
    String s=br.readLine();
    String[] cmd = {"java", "-cp", "E:\netbeans\Project\src", s};
    Process pro=Runtime.getRuntime().exec(s);
    try (BufferedReader in = new BufferedReader(new InputStreamReader(pro.getInputStream()))) {
        String line=null;
        while((line=in.readLine())!=null) {
            System.out.println(line);
        }
        }
        } catch(Exception err) {
    err.printStackTrace();
   }
 }


java.io.IOException: Cannot run program "editor.java": CreateProcess error=2, The system   cannot find the file specified
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
at java.lang.Runtime.exec(Runtime.java:615)
at java.lang.Runtime.exec(Runtime.java:448)
at java.lang.Runtime.exec(Runtime.java:345)
at project.exec.main(exec.java:18)

您需要在命令行参数中传递
.class文件
。您不能使用
java
命令运行
.java
文件

如果包含
main方法的类是
editor.class
,只需将
editor
作为参数传递即可

此外,请务必遵循下面的
@Azodious的
答案

此外,您可能需要将
数组中的路径
更改为包含
类文件的路径
src
文件夹可能没有您的
类文件


因此,使用:-
JavaExecEditor
运行您的程序。我认为这应该行。

您需要在命令行参数中传递
.class文件。您不能使用
java
命令运行
.java
文件

如果包含
main方法的类是
editor.class
,只需将
editor
作为参数传递即可

此外,请务必遵循下面的
@Azodious的
答案

此外,您可能需要将
数组中的路径
更改为包含
类文件的路径
src
文件夹可能没有您的
类文件


因此,使用:-
JavaExecEditor
运行您的程序。我认为这应该行。

您没有将命令数组传递给
exec
方法

将其更改为以下内容:

Process pro=Runtime.getRuntime().exec(cmd);
并且,您的错误表明您正在尝试运行src文件:

Cannot run program "editor.java"

您应该传递
.class文件名来运行它。

您没有将命令数组传递给
exec
方法

将其更改为以下内容:

Process pro=Runtime.getRuntime().exec(cmd);
并且,您的错误表明您正在尝试运行src文件:

Cannot run program "editor.java"

您应该传递
.class文件名
来运行它。

E:\netbeans\Project\src中,您只找到了源文件,源文件u无法运行

尝试在*E:\netbeans\project\build\classes*中找到的类内文件中执行

String[] cmd = {"class", "-cp", "E:\netbeans\project\build\classes\", s};
注意:检查您的课程路径


谢谢

E:\netbeans\Project\src中您只找到了源文件,源文件u无法运行

尝试在*E:\netbeans\project\build\classes*中找到的类内文件中执行

String[] cmd = {"class", "-cp", "E:\netbeans\project\build\classes\", s};
注意:检查您的课程路径

谢谢

多个问题-

  • 您正试图从命令行运行命令“editor.java”。您的命令数组仍然未使用
  • 编译后的类是否与源代码位于同一目录中?通常,在eclipse中,类是在
    bin
    文件夹中生成的。你应该做什么-

    String[]cmd={“java”,“-cp”,“E:\netbeans\Project\bin”,s}
    Process pro=Runtime.getRuntime().exec

  • 您的
    editor.java
    是否在默认包中?如果不是,则在运行命令时需要输入完全限定名

  • 我建议尝试从命令行运行该类,然后从Java代码中形成相同的命令。

    多个问题-

  • 您正试图从命令行运行命令“editor.java”。您的命令数组仍然未使用
  • 编译后的类是否与源代码位于同一目录中?通常,在eclipse中,类是在
    bin
    文件夹中生成的。你应该做什么-

    String[]cmd={“java”,“-cp”,“E:\netbeans\Project\bin”,s}
    Process pro=Runtime.getRuntime().exec

  • 您的
    editor.java
    是否在默认包中?如果不是,则在运行命令时需要输入完全限定名


  • 我建议尝试从命令行运行该类,然后从Java代码中生成相同的命令。

    您是否将
    editor.Java
    作为commadline参数传递?是的,我将editor.Java作为命令行参数传递您需要传递一个类文件。您不能使用java命令权限运行.java文件?是否将
    editor.java
    作为命令行参数传递?是的,我将editor.java作为命令行参数传递您需要传递一个类文件。无法使用java命令权限运行.java文件?java.lang.RuntimeException:不可编译的源代码-project.exec.mainjava.lang.RuntimeException:不可编译的源代码-project.exec.maintry处表达式的非法启动仅使用:E:\netbeans\Projecttry仅使用:E:\netbeans\Project@user1758401. 首先,检查要运行的类文件的位置。然后将路径复制到代码中包含该类文件的文件夹,即所创建的
    cmd
    数组中。现在,使用以下命令运行上述代码:-
    javaexeceditor
    。其中我假设
    editor
    是包含
    main
    方法的
    类的名称。您可以使用相应的
    类文件名
    @user1758401更改该名称。另外,检查您的
    classpath
    是否包含到包含
    class
    文件的文件夹的路径。@user1758401。首先,检查要运行的类文件的位置。然后将路径复制到代码中包含该类文件的文件夹,即所创建的
    cmd
    数组中。现在,使用以下命令运行上述代码:-
    javaexeceditor
    。其中我假设
    editor
    是包含
    main
    方法的
    类的名称。您可以使用相应的
    类文件名
    @user1758401更改该名称。另外,检查
    classpath
    是否包含包含
    class
    文件的文件夹的路径。