Windows Cygwin上的tdbloader:java.lang.NoClassDefFoundError

Windows Cygwin上的tdbloader:java.lang.NoClassDefFoundError,windows,cygwin,jena,classnotfoundexception,tdbloader,Windows,Cygwin,Jena,Classnotfoundexception,Tdbloader,我正在尝试在Cygwin(安装了最新Java的Windows7)上使用tbdloader。这是tbdloader文档: 这是我用来在我的机器上调用tdbloader的包装器脚本: #!/bin/bash # Cygwin script to import large NT files in TDB. CD /cygdrive/c/mypath/TDB-0.8.10 echo "TDB found. Setting path" export TDBROOT=/cygdrive/c/mypath/

我正在尝试在Cygwin(安装了最新Java的Windows7)上使用tbdloader。这是tbdloader文档:

这是我用来在我的机器上调用tdbloader的包装器脚本:

#!/bin/bash
# Cygwin script to import large NT files in TDB.

CD /cygdrive/c/mypath/TDB-0.8.10
echo "TDB found. Setting path"
export TDBROOT=/cygdrive/c/mypath/TDB-0.8.10
export PATH=$PATH:$TDBROOT/bin

CD /cygdrive/c/mypath/ontodata/
echo "Running import..."
tdbloader --loc ./tdb ./datasets/large_file.nt
这是我得到的错误:

java.lang.NoClassDefFoundError: tdb/tdbloader
Caused by: java.lang.ClassNotFoundException: tdb.tdbloader
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: tdb.tdbloader.  Program will exit.
Exception in thread "main"
tdbloader在Mac和Linux上运行良好

有什么想法吗


Mulone

正如我在另一个回答中已经提到的,问题是
类路径分隔符。有关详细信息,请参阅,这建议您调整脚本以包括
cygpath

tdbloader是否在脚本之外工作?尝试在execjava行之前添加
echo$TDB_CP
,以检查类路径设置是否正确。