![Cygwin 上的 tdbloader:java.lang.NoClassDefFoundError](https://linux22.com/image/1276651/Cygwin%20%E4%B8%8A%E7%9A%84%20tdbloader%EF%BC%9Ajava.lang.NoClassDefFoundError.png)
我正在尝试在 Cygwin (安装了最新 Java 的 Windows 7) 上使用 tbdloader。这是 tbdloader 文档:http://jenawiki.hpl.hp.com/wiki/TDB/命令
这是我用来在我的机器上调用 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"
有任何想法吗?
答案1
Java 无法理解 Cygwin 路径(/cygdrive
等等)。您可能需要修改tdbloader2
脚本(我认为它是一个脚本!)以使其使用正常的 Windows 样式文件名CLASSPATH
。应该很容易。如果您需要帮助,请告诉我。