从cmd运行java应用程序时出现问题

从cmd运行java应用程序时出现问题,java,javac,Java,Javac,我有两个文件,app.java和test.java 它们都驻留在同一个包中,使用javac app.java test.java可以很好地编译 然后创建两个类文件。 但是,当我使用命令javaapp运行它们时,因为app有main方法,我得到一个错误:找不到或加载main类app app.java: package working_directory; public class app { public app() { } public static void main(String [

我有两个文件,app.java和test.java 它们都驻留在同一个包中,使用javac app.java test.java可以很好地编译 然后创建两个类文件。 但是,当我使用命令javaapp运行它们时,因为app有main方法,我得到一个错误:找不到或加载main类app

app.java:

package working_directory;

public class app {

public app() {

}

public static void main(String [] args) {
    test testing = new test();
    System.out.println(testing.calculate(60));
}
}
这是test.java

package working_directory;

public class test {

public test() {

}

public int calculate(int x) {
    return (int) x * x * x;
}
}

您已经声明了一个包名,换句话说,它是一个文件夹。那么你的项目应该是这样的

C:\YourProject
 C:\YourProject\working_directory
  C:\YourProject\working_directory\app.java
您的项目从根级别开始,因此它是C:\YourProject。您必须使用命令行并键入java working_目录。要使用java命令,必须指定要运行的类的完全限定名称。这意味着您还需要指定包名

您应该运行以下命令:

java working_directory.app

由于working_directory是包名。

从命令行运行时,必须提供类路径:

窗户

java -classpath . app

确保为编译和运行代码选择正确的路径:

D:\
 +--Folder(start cmd here)
       +---working_directory
                          +----app.java
                          +----test.java
如何编译

如何运行


我们无法调试看不到的代码。没有可查看的代码。所有有问题的信息都提供了可能的副本,因为目录中有四个文件,app.java、test.java、app.class、test.classIt在IDE中运行良好,我只是在通过CMDAll手动运行时遇到了问题。目录中的所有文件都是小写的,并且相互匹配,但错误相同。错误:无法找到或加载主类工作目录。app@laocakworking_directory是包的实际名称,对吗?如果不是,请使用包的实际名称。是的,working_directory是包的全名,它包含在两个文件中。@laocak我知道了。在运行java之前,您需要转到父目录。i、 e.cd../java-classpath。应用程序错误:无法找到或加载主类app@laocak,尝试在工作目录外执行此命令,如java-classpath。这是我的问题。我已经在工作目录中启动了cmd。D:\Folder\>java working\u directory.app工作正常。
D:\Folder\>javac working_directory\*.java
D:\Folder\>java working_directory.app