找不到Java类

Thw*_*tes 5 java jar classpath

我正在尝试从jar文件运行java程序.Java找不到支持marc4j的类.我究竟做错了什么.这是详细信息

在我当前的直接是MarcTry.jar我的主要课程.还有marc4j.jar,它有缺少的类:

org/marc4j/MarcReader
Run Code Online (Sandbox Code Playgroud)

例如:

java -jar MarcTry.jar线程"main"中的异常java.lang.NoClassDefFoundError:org/marc4j/MarcReader引起:java.lang.ClassNotFoundException:java.net.URLClassLoader $ 1.run(URLClassLoader.java)中的org.marc4j.MarcReader :202)在java.security.AccessController.doPrivileged(Native Method)java.net.URLClassLoader.findClass(URLClassLoader.java:190)at java.lang.ClassLoader.loadClass(ClassLoader.java:307)at sun.misc. java.lang.ClassLoader.loadClass(ClassLoader.java:248)中的Launcher $ AppClassLoader.loadClass(Launcher.java:301)找不到主类:marctry.Main.程序将会退出.

我试过了

java -jar MarcTry.jar -classpath marc4j.jar

有和没有marc4j.jar一个完全限定的路径.

欢迎任何想法.

Kaj*_*Kaj 5

当您使用“-jar”开关时,类路径将被忽略。使用“-classpath”指定两个 jar 并使用完全限定名称执行主类。

例如 java -cp MarcTry.jar;marc4j.jar com.domain.MainClass

.. 或将 marc4j.jar 添加到 MarcTry.jar 的清单文件中的类路径条目

您可以在此处阅读有关将 jar 添加到清单文件的类路径的信息:将类添加到 JAR 文件的类路径