当使用外部jar运行bat文件时NoclassDefFoundError异常
问题描述:
我正在使用Eclipse,并在我的Java Project中添加了一个外部jar文件。它编译成功并顺利运行。当使用外部jar运行bat文件时NoclassDefFoundError异常
当我开始在Eclipse IDE之外运行时出现问题。我在bin文件夹中创建了一个bat文件(包含所有类的文件夹已经被编译)。此bat文件是:
java package.ClassToRun
但是当我执行这个bat文件,我收到错误:NoclassDefFoundError
因为Java找不到类X(X类在我的外部JAR文件)。
我该如何解决这个问题。 (意思是我可以在IDE之外运行这个类)。
答
你可以在外部.jar
添加到您的类路径:
java命令/usr/local/jar/foobar.jar com.your.main.classname
您也可以在您拥有.jar
文件的文件夹中创建一个文件夹(类似lib
)。
Manifest.MF
内容可以是:
Main-Class: com.your.main.classname
Class-Path: lib/one.jar lib/two.jar
文件夹的内容:
mainFolder/
* lib/one.jar
* lib/two.jar
* my-main.jar
要执行:
答
您应该在执行程序时将外部jar添加到-classpath。
http://cs.brown.edu/courses/cs015/docs /guide_to_exporting_runnable_jars.pdf – 2013-04-20 18:54:12