ClassNotFoundError ArrayList

时间:2014-11-18 17:08:53

标签: java arraylist

我收到NoClassError,我不知道是什么导致它。我是java的新手。任何帮助将不胜感激!

Exception in thread "main" java.lang.NoClassDefFoundError: arrayList/ArrayListStrings
Caused by: java.lang.ClassNotFoundException: arrayList.ArrayListStrings
    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:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

      package arrayList;

    import java.util.ArrayList;

    public class ArrayListStrings {
        public static void main(String[]args){
        ArrayList<String> stringList = new ArrayList<>();

        stringList.add("94043");
        stringList.add("95043");
        stringList.add("96043");
        stringList.add("94043");

        stringList.set(0,"98043");

        for (String value : stringList){
            System.out.println(value);
        }
        }
    }

2 个答案:

答案 0 :(得分:0)

通过指定完全分类的名称来运行程序。它有效!
java arrayList.ArrayListStrings

如果没有指定包名,如果你运行它,它将抛出 NoClassDefFoundError

答案 1 :(得分:0)

粘贴代码并在IDE上运行它不会产生任何错误,因此可能是您在类中调用main方法的方式。

虽然java中的包和文件夹是相同的,但声明包会创建一个逻辑树,从中分层访问类。因此,在存储包(目录)arrayList的终端中运行: java arrayList.ArrayListStrings

或者,如果要从存储.class的目录运行,请使用-classpath(或-cp)选项手动更改类路径(java可以找到类的路径): java -classpath .. arrayList.ArrayListStrings