0

我正在尝试从命令提示符运行一个 jar 文件。对于我尝试过的所有以下组合,我不断收到上述错误。

java -jar Mater.jar
java -cp ".:log4j-1.2.16.jar" -jar Mater.jar
java -cp log4j-1.2.16.jar -jar Mater.jar

我提取了 log4j-1.2.16.jar 以查看 Layout 是否在我引用的 jar 中并且它在那里。

我已经使用 Eclipse IDE“导出 jar 选项”创建了 jar,这是我的清单文件。

Manifest-Version: 1.0
Main-Class: TestController

Class-Path: apache-mime4j-0.6.jar bsh-1.3.0.jar cglib-nodep-2.1_3.jar commons-beanutils-1.8.0.jar commons-codec-1.6.jar 

Class-Path: commons-collections-3.2.1.jar commons-exec-1.1.jar commons-io-2.0.1.jar commons-jxpath-1.3.jar commons-logging-1.1.1.jar 

Class-Path: cssparser-0.9.5.jar derbyclient.jar dom4j-1.1.jar eclipselink-2.0.0.jar flash-selenium.jar guava-12.0.jar hamcrest-core-1.1.jar 

Class-Path: htmlunit-2.9.jar htmlunit-core-js-2.9.jar httpclient-4.1.3.jar httpcore-4.1.3.jar httpmime-4.1.3.jar ini4j-0.5.2.jar 

Class-Path: javax.persistence-2.0.0.jar jcommander-1.13.jar jna-3.4.0.jar jna-platform-3.4.0.jar 

Class-Path: json-20080701.jar junit-dep-4.10.jar logging-selenium-1.2.jar mail.jar mysql-connector-java-5.0.7-bin(2).jar 

Class-Path: nekohtml-1.9.15.jar netty-3.2.7.Final.jar operadriver-0.14.jar 
poi-3.6-20091214.jar poi-ooxml-3.6-20091214.jar poi-ooxml-schemas-3.6-20091214.jar 

Class-Path: protobuf-java-2.4.1.jar sac-1.3.jar saxon-8.7.jar SaxonLiaison.jar selenium-java-2.25.0.jar selenium-java-2.25.0-srcs.jar 

Class-Path: selenium-java-client-driver.jar selenium-java-client-driver-sources.jar selenium-java-client-driver-tests.jar 

Class-Path: selenium-java-client-driver-test-sources.jar selenium-server.jar selenium-server-coreless.jar 

Class-Path: selenium-server-sources.jar serializer-2.7.1.jar testng.jar testng-6.0.1-nobsh-noguice.jar testng-xslt-maven-plugin-test-0.0.jar 

Class-Path: validation-api-1.0.0.GA.jar webbit-0.4.8-SNAPSHOT.jar xalan-2.7.1.jar xercesImpl-2.9.1.jar xml-apis-1.3.04.jar xmlbeans-2.3.0.jar log4j-1.2.8.jar

我已经交叉检查了类路径是否在 jar 中使用正确设置

jar tf Mater.jar

它在命令提示符下正确显示 jar 中的所有文件..

任何人都可以对此有所了解吗?

4

1 回答 1

0

我有一个类似的问题,同样的 NoClassDefFoundError,在这里:NoClassDefFoundError after update to Java 7

我无法解释原因,但我发现的唯一可行的解​​决方案是使用 Eclipse 导出为可运行的 JAR

于 2012-10-23T13:32:05.900 回答