我在尝试运行使用Apache Lucene的Java文件时遇到问题。
我可以编译它,因为我的类路径中有.jar文件,但是当我想运行.class文件时,我必须添加此参数-classpath .:lucene-core.x.x.jar
,如果我不这样做,我会收到此错误:
Exception in thread "main" java.lang.NoClassDefFoundError: HelloLucene
Caused by: java.lang.ClassNotFoundException: HelloLucene
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)
Could not find the main class: HelloLucene. Program will exit.
我是否还必须将类路径添加到jvm中?如果是这样,我该怎么做?
这是我在回复CLASSPATH时得到的输出:
ricardo@ricardo-laptop:~/Desktop/lucene/Indexer$ echo $CLASSPATH
/home/ricardo/lucene-3.4.0/lucene-core-3.4.0.jar:/home/ricardo/lucene-3.4.0/contrib/demo/lucene-demo-3.4.0.jar
答案 0 :(得分:1)
找不到的课程是你的班级,即HelloLucene
。不是图书馆。
您的课程可能是在bin
或target/classes
下编写的,因此您的课程路径必须指向它,即
-classpath target/classes:...