其他分享
首页 > 其他分享> > Apache Jena 初体验!

Apache Jena 初体验!

作者:互联网

Apache Jena

最近在使用Apache Jena读取RDF数据,这里的坑太多了~ 。下边介绍两种安装方式,希望我能让你少走点坑。

参考:

https://blog.csdn.net/liangcha007/article/details/124644434

1. Docker 方式安装(超简单!)

(注意:如果对于Docker不太熟悉,只加载小文件的话可以考虑!文件太大的话,建议还是算了,如果很熟悉怎么使用Docker的当我没说。。。)

参考:

https://blog.csdn.net/qq_37912886/article/details/118962380?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2~default~CTRLIST~default-1-118962380-blog-117360643.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2~default~CTRLIST~default-1-118962380-blog-117360643.pc_relevant_default&utm_relevant_index=1

1、安装好虚拟机,配置虚拟机的网卡为桥接模式。注意要桥接的网卡是有线网,而且不需要拨号。(因为无线网一般有密码,桥接到无线网卡的话不方便输入wifi密码,导致链接上去也无法上网。网络配置参考链接)

2、安装curl(安装前最好先更新一下源)

sudo apt-get update
sudo apt install curl

安装Docker

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

从仓库pull jena-fuseki镜像(没有指定版本号,默认最新版)

docker pull stain/jena-fuseki

3、启动jena-fuseki

sudo docker run -d -p 3030:3030 -e "ADMIN_PASSWORD=test@jena" stain/jena-fuseki

上述命令设置的服务端口为:3030
账号:admin,密码:test@jena

至此,可以在虚拟机的浏览器里输入localhost:3030进入jena页面。

PS:有时候也会出现 -> Windows下Docker启动容器时,端口被占用错误。解决办法:https://www.cnblogs.com/uncmd/p/16056993.html


2. 传统方式安装

(如果上边这个方法用不了,那就老老实实去装电脑上吧!哈哈哈!)

参考:

https://blog.csdn.net/setella/article/details/103381537

自己看上边链接哈!等我有时间的话我再给你们搬一遍,哈哈哈!下边都是记录我按照那个安装时出现的问题哈。

打开失败~,那还能怎么办,查日志呗。

原来是java版本的问题,55代表jdk11。Jena官网其实有说明的!

安装java的方式也给你们整理出来了(多版本jdk管理):https://blog.csdn.net/qq_42148563/article/details/124668739

按照上边的安装好了之后,发现能够正常运行,但是我居然访问不了!(我是在服务器上部署的,没出现的不用管哈!)

网页上显示:

HTTP status: "403", message: Forbidden

修改Fuseki 配置文件(一般放置在/run/configuration下),注释掉访问的限制!

jena不分系统的,linux下运行bin下!!! bat是window!!!

加载数据:

./tdbloader --loc=/home/maocy/jena/jena/tdb /home/maocy/jena/jena/data/planet_osm.ttl

运行服务:

sudo  ./fuseki-server --loc=/home/maocy/jena/jena/tdbs  /worldKG1.0

后记:

使用Sparql进行对源文件直接查询。

sparql --data=/home/maocy/jena/jena/data/planet_osm.ttl --query=/home/maocy/jena/jena/data/test.rq

运行了20分钟,超出了java的堆栈。数据集确实太大了。。。放弃这种方法,继续尝试。

WARN riot :: [line: 853542064, col: 36] Unicode replacement character U+FFFD in string

这个问题,貌似是编码问题。经过搜索相关资料发现,可能是因为数据集有乱码,导致jena报出了警告!

数据集乱码排查。

注意:jena报错的行号是从1开始索引的。

标签:初体验,default,jena,blog,Jena,https,Apache,--,安装
来源: https://www.cnblogs.com/chaoyuan-mao/p/16338746.html