import java.io.*;
public class ArrayApp{
public static void main(String[] args){
System.out.println("lllll");
} // end main()
} // end class ArrayApp
我在编译后运行我的应用程序时出现此错误。
Exception in thread "main" java.lang.NoClassDefFoundError: ArrayApp
Caused by: java.lang.ClassNotFoundException: ArrayApp
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: ArrayApp. Program will exit.
答案 0 :(得分:5)
您需要确保您的类文件位于类路径中。假设您使用的是默认包(即没有包声明),您需要在运行时告诉Java在哪里找到您的类。因此,我们假设您的ArrayApp.class
文件位于同一目录中。你需要像这样运行它:
java -cp . ArrayApp
选项-cp
和以下.
告诉Java类将在当前目录中。 -cp
的较长名称为-classpath
,因此您也可以使用该名称。
还要注意类路径和类名之间的空格。该路径是类文件所在的基本目录。如果将它们编译到名为“bin”的目录中,那么您将改变调用Java的方式:
java -cp bin/ ArrayApp
“ArrayApp”是完全限定的类名。
答案 1 :(得分:1)
您的类路径不正确。尝试... java -classpath . ArrayApp