我正在尝试在 Linux 的代码中使用 Jama 包。 在我的主类中,我尝试使用 Matrix 类。
这是我的主要类(class):
import Jama.*;
class Main {
public static void main(String[] args) {
Matrix A = new Matrix(3,5);
}
}
我没有使用任何 IDE,我的 makefile 是:
JC = javac -classpath $(CLASSPATH):jars/Jama-1.0.2.jar
.SUFFIXES: .java .class
.java.class:
$(JC) $(JFLAGS) $*.java
CLASSES = \
Title.java \
Sentence.java \
Document.java \
LSA.java \
Main.java \
default: classes
classes: $(CLASSES:.java=.class)
clean:
$(RM) *.class
我的jar文件位于./jars/目录下
当我运行 Main 时,我有以下输出
sefa@sefa-laptop:~/Desktop/courses/cs578-nlp/CS578Project/source$ java Main
Exception in thread "main" java.lang.NoClassDefFoundError: Jama/Matrix
at Main.main(Main.java:9)
Caused by: java.lang.ClassNotFoundException: Jama.Matrix
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
... 1 more
sefa@sefa-laptop:~/Desktop/courses/cs578-nlp/CS578Project/source$
最佳答案
您正在运行独立类,但没有正确的类路径。如果将 jar 引用添加到 JAR 文件中的 list ,则在运行它时无需将其添加到类路径。
关于java - Jama.Matrix ClassNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1863296/