运行jar文件时出现NoClassDefFoundError

时间:2015-07-21 02:19:33

标签: java eclipse

我从eclipse导出了jar文件。我从命令行运行它。但得到以下异常 -

F:\>java -jar demo1.jar
Exception in thread "main" java.lang.NoClassDefFoundError: a/Driver
Caused by: java.lang.ClassNotFoundException: a.Driver
        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:303)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316)
Could not find the main class: a.Driver.  Program will exit.

MainFest文件条目 -

Manifest-Version: 1.0
Main-Class: a.Driver
Class-Path: F:\Selenium Jars\testng-6.0.jar

我有什么遗漏

1 个答案:

答案 0 :(得分:0)

您的清单文件告诉java命令main方法位于名为a.Driver的java类中。因此,Java将尝试从jar中加载该类,从条目a/Driver.class相对于jar的根,然后调用其方法static void main(String[])。抛出错误表示Java在jar中找不到该文件。