我正在尝试遵循使用虚拟图的Stardog教程。
按照说明,我设置了$STARDOG_EXT环境变量。
JDBC设置 Stardog不附带JDBC驱动程序,因此您需要手动将包含RDBMS驱动程序的JAR文件复制到Stardog服务器的类路径中。这样做的最佳方法是将
STARDOG_EXT环境变量设置为指向Stardog安装目录之外的目录,并在那里复制jar文件: $ export STARDOG_EXT=/opt/stardog/ext $ mkdir $STARDOG_EXT $ cp JDBC_JAR_FILE $STARDOG_EXT
我在上面提到的位置复制了JAR文件,如下所示.
bilesh@vm-ubuntu:~$ echo $STARDOG_EXT
/opt/stardog/ext
bilesh@vm-ubuntu:~$ cd $STARDOG_EXT
bilesh@vm-ubuntu:/opt/stardog/ext$ ls -la
total 916
drwxr-xr-x 2 root root 4096 Feb 19 20:22 .
drwxr-xr-x 9 stardog stardog 4096 Feb 19 20:21 ..
-rw-r--r-- 1 stardog root 927447 Feb 19 20:22 postgresql-42.2.10.jar但是当我试图使用Unable to load class: org.postgresql.Driver创建一个虚拟图时,我得到了错误的PostgreSQL。
bilesh@vm-ubuntu:~$ sudo /opt/stardog/stardog-server.sh start
Starting stardog
Starting Stardog server in background, see /var/opt/stardog//stardog.log for more information.
bilesh@vm-ubuntu:~$ cd Workspace/Stardog/pgsql_demo
bilesh@vm-ubuntu:~/Workspace/Stardog/pgsql_demo$ stardog-admin virtual add music.properties music_mappings.ttl
Unable to load class: org.postgresql.Driver from ClassLoader:sun.misc.Launcher$AppClassLoader@619a5dff;ClassLoader:java.net.URLClassLoader@3b63d1de我的PostgreSQL属性文件(music.properties)和映射文件(music_mappings.ttl)位于location - ~/Workspace/Stardog/pgsql_demo中。
发布于 2020-02-20 20:15:29
为了使其工作,我将JAR文件(postgresql-42.2.10.jar)放置在$JAVA_HOME/jre/lib/ext/中,并重新启动服务器。
之后,我成功地创建了虚拟图。
不知道这是不是我今后要做的事。
发布于 2020-02-21 16:43:09
在使用包时,需要以不同的方式设置STARDOG_EXT。如果只在shell中设置守护进程环境,则它将不可见。见这里的文档:https://docs.stardog.com/get-started/install-stardog/linux-installation#package-layout
此外,在以这种方式安装时,应该使用systemd/systemctl启动服务器。
https://stackoverflow.com/questions/60324523
复制相似问题