我在编译使用嵌入式Derby数据库的java程序时遇到问题。我正在使用Netbeans,并使用“清理和构建”选项,它创建了一个dist文件夹。我将数据库添加到dist / resources文件夹,我有德比连接指向的文件夹:
System.setPropert("derby.system.home", System.getProperty("user.dir") + "//resources"
麻烦的是,有些人无法运行该程序。对于某些人来说,它就像点击dist文件夹中的.jar文件一样简单。对于其他人来说,它根本不会运行。另外,我给了人们整个软件包,他们无法从Netbeans运行它,但出现以下错误:
-do编译: [javac]将11个源文件编译为/ home / bull / Desktop / asdfasd / build / classes [javac]注意:某些输入文件使用未经检查或不安全的操作。 [javac]注意:使用-Xlint重新编译:取消选中以获取详细信息。 [copy]将81个文件复制到/ home / bull / Desktop / asdfasd / build / classes [copy]将4个空目录复制到/ home / bull / Desktop / asdfasd / build / classes下的1个空目录
-post编译:
编译:
运行: [java] java.sql.SQLException:找不到合适的jdbc驱动程序:derby:CS242 [java]线程“AWT-EventQueue-0”中的异常java.lang.NullPointerException [java] at customeremailmanager.CustomerDB.getCustomers(CustomerDB.java:105) [java] at customeremailmanager.CustomerEmailFrame。(CustomerEmailFrame.java:26) [java] at customeremailmanager.CustomerEmailFrame $ 11.run(CustomerEmailFrame.java:450) [java] java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251) [java] at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:721) [java] at java.awt.EventQueue.access $ 200(EventQueue.java:103) [java] at java.awt.EventQueue $ 3.run(EventQueue.java:682) [java] at java.awt.EventQueue $ 3.run(EventQueue.java:680) [java] java.security.AccessController.doPrivileged(Native Method) [java] at java.security.ProtectionDomain $ 1.doIntersectionPrivilege(ProtectionDomain.java:76) [java] at java.awt.EventQueue.dispatchEvent(EventQueue.java:691) [java] at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244) [java] at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163) [java] at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151) [java] at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147) [java] at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139) [java] at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
那么这个程序可能会出错呢?以下是整个套餐:http://wikisend.com/download/969374/CustomerEmailManagerGUI.zip
答案 0 :(得分:0)
消息“找不到适合jdbc:derby的驱动程序:”通常表示在CLASSPATH中找不到derby.jar文件。
您是否正在重新分发derby.jar文件作为应用程序的一部分?如果是这样,也许该过程没有正确安排jar在你的应用程序的CLASSPATH中。