当我在Netbeans中创建Java Web应用程序并尝试部署并运行它时,会抛出以下异常:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/derby/iapi/services/property/PropertyUtil
at org.apache.derby.impl.drda.NetworkServerControlImpl.getPropertyInfo(Unknown Source)
at org.apache.derby.impl.drda.NetworkServerControlImpl.<init>(Unknown Source)
at org.apache.derby.drda.NetworkServerControl.main(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.apache.derby.iapi.services.property.PropertyUtil
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 3 more
Clean and Build工作正常。早些时候,我曾经在我现在面临问题的机器上成功部署和运行另一个Java Web应用程序。
我使用的是Netbeans 7.1。我试图升级到Netbeans 7.3,但这并没有解决问题。我还尝试将MySQL Connector / J JAR文件放在Glassfish的/lib
文件夹中,但这并没有解决问题。
答案 0 :(得分:3)
获取Derby类的ClassNotFoundException有两个基本原因:
有三件事可以使这更复杂:
Derby'sysinfo'工具旨在帮助诊断CLASSPATH问题,因此您可以尝试使用它来更全面地了解在类路径中找到的Derby jar副本。
希望这有帮助!
答案 1 :(得分:1)
该机器唯一的问题是,有人删除了Java。 :(