从终端运行java类

Gia*_*nis 3 java terminal

之前已经问过这个问题,但由于某些原因我仍然无法弄清楚什么是错的.我在文件src中的包语法测试中得到了一个名为NewClass的类.从src路径我输入:

javac src/syntaxtest/NewClass.java

并且编译了类,我可以在syntaxtest文件夹中看到NewClass.class.现在从同一个路径或甚至与NewClass.class相同的文件夹,我无法弄清楚如何从终端运行该类.我做了很多不同的尝试,但我得到了以太

ClassDefNotFound或ClassDefNotFound(错误的名称:syntaxtest/NewClass)

mae*_*ics 8

试试" java -cp src syntaxtest.NewClass".

也就是说,如果你有一个文件夹"src",它包含子文件夹(包)"syntaxtest",而类"NewClass"在"package syntaxtest"中,那么上面的命令就可以了.

$ ls src/syntaxtest
NewClass.java
$ cat src/syntaxtest/NewClass.java
package syntaxtest;
public class NewClass {
  public static void main(String args[]) {
    System.out.println("Hello, World!");
  }
}
$ javac src/syntaxtest/NewClass.java
$ java -cp src syntaxtest.NewClass
Hello, World!
Run Code Online (Sandbox Code Playgroud)