tdbloader on Cygwin: java.lang.NoClassDefFoundError

0

I'm trying to use tbdloader on Cygwin (Windows 7 with the latest Java installation). This is the tbdloader documentation: http://jenawiki.hpl.hp.com/wiki/TDB/Commands

This is the wrapper script I'm using to call tdbloader on my machine:

#!/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

This is the error I get:

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"

Any ideas?

Mulone

Posted 2011-05-20T19:11:49.600

Reputation: 1 883

Answers

0

Java does not understand Cygwin paths (/cygdrive etc.) You might need to modify the tdbloader2 script (I assume it's a script!) to make it use normal Windows-style filenames for the CLASSPATH. Should be easy. Let me know if you need help.

Robin Green

Posted 2011-05-20T19:11:49.600

Reputation: 1 107

Thanks! I added some info the post. Actually the package should work on cygwin. – Mulone – 2011-05-20T20:24:15.463