2014-11-21 5 views
1

Я использую версию Java 7, которая поставляется с OS X Yosemite. Я понимаю, что Oracle теперь отправляет Java DB (т. Е. Derby) с Java, поэтому, возможно, я уже установил его.ClassNotFoundException: org.apache.derby.jdbc.EmbeddedDriver на OS X Yosemite

В настоящее время я получаю ClassNotFoundException при попытке использования Class.forName("org.apache.derby.jdbc.EmbeddedDriver").

Я должен каким-то образом добавить драйвер из локального каталога, или мне нужно его загрузить (например, поскольку OS X поставляется с JRE, но не JDK)?

Если второе верно, откуда его получить (т. Е. Существуют ли различия между драйверами от Apache и Oracle)?

+0

Derby не включен в Java, вам нужно добавить его в свой класс. –

+0

@MarkRotteveel Я немного смущен, потому что [здесь] (http://www.oracle.com/technetwork/java/javadb/overview/javadb-156712.html) говорится: «Java DB включен в JDK». – Drux

+1

Он установлен вместе с JDK (по крайней мере, с Java 7, не уверен, что он все еще работает с Java 8), но он не включен в Java, поэтому вам все равно нужно включить его в classpath самостоятельно. –

ответ

2

Хотя Derby (или JavaDB) установлен вместе с JDK (по крайней мере, с Java 7, не уверен, что они все еще работают с Java 8), он не является частью самой Java. Это означает, что вам все равно нужно включить его в classpath самостоятельно.