Исключение в потоке "main" java.lang.NoClassDefFoundError: sdb / sdbconfig - PullRequest
2 голосов
/ 05 апреля 2011

Я хочу экспортировать мою онтологию (сделанную в Protege) в базу данных MySQL.Я следовал этим инструкциям: https://jena.apache.org/documentation/sdb/installation.html, и https://jena.apache.org/documentation/sdb/commands.html. И когда я использую команду "bin / sdbconfig --sdb = sdb.ttl --create", я получаю эту ошибку:

Exception in thread "main" java.lang.NoClassDefFoundError: sdb/sdbconfig
Caused by: java.lang.ClassNotFoundException: sdb.sdbconfig
        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:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: sdb.sdbconfig.  Program will exit.

Я устанавливаю переменные среды следующим образом:

Viktor@Pepe /cygdrive/d/My Dropbox/Diplomska/SDB-1.3.3
$ export SDBROOT="d:/My Dropbox/Diplomska/SDB-1.3.3"

Viktor@Pepe /cygdrive/d/My Dropbox/Diplomska/SDB-1.3.3
$ export SDB_USER="root"

Viktor@Pepe /cygdrive/d/My Dropbox/Diplomska/SDB-1.3.3
$ export SDB_PASSWORD=""

Viktor@Pepe /cygdrive/d/My Dropbox/Diplomska/SDB-1.3.3
$ export SDB_JDBC="d:/Fakultet/jars/mysql-connector-java-5.1.7-bin.jar"

Viktor@Pepe /cygdrive/d/My Dropbox/Diplomska/SDB-1.3.3
$ export PATH=$SDBROOT/bin:$PATH

Это вывод команды "bin / sdb_path":

Viktor@Pepe /cygdrive/d/My Dropbox/Diplomska/SDB-1.3.3
$ bin/sdb_path
d:/My Dropbox/Diplomska/SDB-1.3.3/lib/arq-2.8.7-tests.jar;d:/My Dropbox/Diplomsk
a/SDB-1.3.3/lib/arq-2.8.7.jar;d:/My Dropbox/Diplomska/SDB-1.3.3/lib/hsqldb-1.8.0
.10.jar;d:/My Dropbox/Diplomska/SDB-1.3.3/lib/icu4j-3.4.4.jar;d:/My Dropbox/Dipl
omska/SDB-1.3.3/lib/iri-0.8.jar;d:/My Dropbox/Diplomska/SDB-1.3.3/lib/jena-2.6.4
-tests.jar;d:/My Dropbox/Diplomska/SDB-1.3.3/lib/jena-2.6.4.jar;d:/My Dropbox/Di
plomska/SDB-1.3.3/lib/junit-4.5.jar;d:/My Dropbox/Diplomska/SDB-1.3.3/lib/log4j-
1.2.13.jar;d:/My Dropbox/Diplomska/SDB-1.3.3/lib/lucene-core-2.3.1.jar;d:/My Dro
pbox/Diplomska/SDB-1.3.3/lib/sdb-1.3.3-tests.jar;d:/My Dropbox/Diplomska/SDB-1.3
.3/lib/sdb-1.3.3.jar;d:/My Dropbox/Diplomska/SDB-1.3.3/lib/slf4j-api-1.5.8.jar;d
:/My Dropbox/Diplomska/SDB-1.3.3/lib/slf4j-log4j12-1.5.8.jar;d:/My Dropbox/Diplo
mska/SDB-1.3.3/lib/stax-api-1.0.1.jar;d:/My Dropbox/Diplomska/SDB-1.3.3/lib/wstx
-asl-3.2.9.jar;d:/My Dropbox/Diplomska/SDB-1.3.3/lib/xercesImpl-2.7.1.jar

И это "Store"/sdb.ttl "file: @

prefix sdb:     <http://jena.hpl.hp.com/2007/sdb#> .
@prefix rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
@prefix rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ja:      <http://jena.hpl.hp.com/2005/11/Assembler#> .

# MySQL - InnoDB


<#store> rdf:type sdb:Store ;
    sdb:layout     "layout2/index" ;
    sdb:connection <#conn> ;
    sdb:engine     "InnoDB" ;      # MySQL specific
.

<#conn> rdf:type sdb:SDBConnection ;
    sdb:sdbType       "MySQL" ;    # Needed for JDBC URL
    sdb:sdbHost       "localhost" ;
    sdb:sdbName       "SDB" ;
    sdb:driver        "com.mysql.jdbc.Driver" ;
    .

Может кто-нибудь сказать мне, что я делаю не так?

1 Ответ

2 голосов
/ 06 апреля 2011

Это действительно простая ошибка: путь к классу sdbconfig должен быть неправильным.Однако я совсем не знаю windows и cygwin.

Я предполагаю, что причиной этого является пробел в пути "My Dropbox".Не могли бы вы попробовать переместить SDB в другой каталог?Вы также можете попробовать export SDBROOT="d:/My\ Dropbox/Diplomska/SDB-1.3.3".

...