2011-04-04 94 views
2

我想將我的本體(在Protege中製作)導出到MySQL數據庫中。我按照這些說明: http://openjena.org/wiki/SDB/Installationhttp://www.openjena.org/wiki/SDB/Commands。 當我使用命令 「斌/ sdbconfig --sdb = sdb.ttl --create」,我得到這個錯誤:線程「main」中的異常java.lang.NoClassDefFoundError:sdb/sdbconfig

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. 

我設置環境變量是這樣的:

[email protected] /cygdrive/d/My Dropbox/Diplomska/SDB-1.3.3 
$ export SDBROOT="d:/My Dropbox/Diplomska/SDB-1.3.3" 

[email protected] /cygdrive/d/My Dropbox/Diplomska/SDB-1.3.3 
$ export SDB_USER="root" 

[email protected] /cygdrive/d/My Dropbox/Diplomska/SDB-1.3.3 
$ export SDB_PASSWORD="" 

[email protected] /cygdrive/d/My Dropbox/Diplomska/SDB-1.3.3 
$ export SDB_JDBC="d:/Fakultet/jars/mysql-connector-java-5.1.7-bin.jar" 

[email protected] /cygdrive/d/My Dropbox/Diplomska/SDB-1.3.3 
$ export PATH=$SDBROOT/bin:$PATH 

這是命令的 「bin/sdb_path」 的輸出:

[email protected] /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 

這就是 「存儲/ sdb.ttl」 文件: @

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" ; 
    . 

誰能告訴我我做錯了什麼?請幫助...任何人:)?

回答

2

這是一個非常基本的錯誤:sdbconfig的類路徑必須是錯誤的。但是我根本不知道windows和cygwin。

我的猜測是路徑'我的Dropbox'中的空間造成了這種情況。你可以嘗試將sdb移動到另一個目錄嗎?您也可以嘗試export SDBROOT="d:/My\ Dropbox/Diplomska/SDB-1.3.3"

+0

非常感謝:)多麼愚蠢的錯誤。是的,這是導致問題的空間。我將SDB文件夾移到了另一個位置,現在它工作正常。 – Viktor 2011-04-07 19:54:44

相關問題