0

当我运行以下命令时:

bin/tdbloader2 --loc=/store/data/here /seed/data/serverfault-dump.nt

我得到的回应是:

10:52:31 -- TDB Bulk Loader Start
10:52:31 Data phase
Error: Could not find or load main class com.hp.hpl.jena.tdb.store.bulkloader2.CmdNodeTableBuilder

这很可能是由于我的环境变量在某个地方的问题引起的。问题是,我不经常使用 Java,所以我知道的不够多,不知道如何找出找不到该类的内容。

如何让 tdbloader2 找到合适的类?

4

2 回答 2

2

我忘记设置 JENAROOT 路径变量。

https://jena.apache.org/documentation/tools/

所有命令行工具都使用环境变量 JENAROOT 为您自动配置类路径。您可以按如下方式进行设置:

在 Linux / Mac 上

export JENAROOT=您将 Jena 下载到的目录 export PATH=$PATH:$JENAROOT/bin 在 Windows 上

SET JENAROOT=你下载 Jena 到的目录 SET PATH=%PATH%;%JENAROOT%\bat

于 2015-01-27T23:23:08.523 回答
1

您至少需要将TDBROOT环境变量设置为包含 TDB 下载的目录。这将是上面的目录,bin因为一些脚本用于${TDBROOT}/bin/foo启动其他脚本

该脚本尝试通过调用脚本来自动构建有效的类路径,该tdb_path脚本调用make_classpath_mvnmake_classpath取决于您的环境。如果您tdb_path直接运行该脚本,您可以查看它是否生成了一个看起来合理的类路径(或者如果输出没有提供任何有用的信息,则将它生成的内容添加到您的问题中)。

于 2015-01-27T20:37:45.377 回答