如何解决jdom库的运行时异常?

时间:2011-03-01 07:10:41

标签: java jdom

我想使用jdom-1.1.jar库文件从java代码创建一个kml文件。它没有给我的程序编译时错误,但显示运行时错误:

C:\ProgramFiles\Tomcat\tomcat-5.5.9\webapps\jsp-examples>java KmlSample
Exception in thread "main" java.lang.NoClassDefFoundError: org/jdom/Content
Caused by: java.lang.ClassNotFoundException: org.jdom.Content
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: KmlSample.  Program will exit.

我该如何解决这样的错误..

2 个答案:

答案 0 :(得分:1)

你需要在你的类路径上添加jdom-1.1.jar,所以要说明你运行程序的方式,应该是

java -classpath /path/to/jdom-1.1.jar;. YourMainClassFile

答案 1 :(得分:1)

你肯定要告诉Java在哪里找到jdom库(以及你可能需要的其他库)。假设您在某个文件夹/dev/lib中有库,那么正确的命令将是这样的:

java -cp .;/dev/lib/jdom-1.1.jar KmlSample

此命令进一步假设文件KmlSample.class位于当前位置,即在默认命名空间中定义类KmlSampleKmlSample.java不有一个package语句 KmlClass有一个正确的main方法(入口点)。


修改

$> cd C:\programfiles\tomcat\tomcat-5.5.9\webapps\jsp-examples
$> java -cp .;../../common/lib/jdom-1.1.jar KmlSample

这应该有用(或者至少应该产生不同的错误信息)


确保当前目录(在上例中执行java的地方)包含文件KmlSample.class(请查看我的答案的上半部分)。您在该位置提到了KmlSample.java文件 - 您编译了源代码吗?