先说点废话。
作为一名前MS开发人员,在习惯了C#优美的语法和VS流畅的开发过程之后,让我去接受Java几乎是不可能的。而且在接受了长时间的MS的洗脑之后,对Java也有一种主观上的抵制。不过要想操作本体,木有Java却实在很困难。怎么才能既能维护我MS开发人员的面子,又能使用Java下的Jena那强大的功能捏?木哈哈,车到山前必有路,还好我们有Jruby和ActiveRDF以及用于ActiveRDF的Jena adapter。这样我就可以厚颜无耻的对别人说,注意,我用的是Ruby,不是Java……
接下来看看如何在Linux下配置jdk,jena,jruby和activerdf。恩……为什么是Linux?呵呵。实验室的机器没有预装正版的Windows,为了避免使用盗版,所以一直在使用Linux……
我的微软梦……
其实Linux的操作体验也不错的说。这里使用的是我的最爱,Fedora 7。
下面开始所有的操作在root用户下进行。在进行所有的操作之前我的系统中已经安装了eclipse,因此也就安装了Fedora 7自带的java和jdk,另外还有ruby。
首先安装sun jdk。
为什么要安装sun jdk,而不使用sun jre或者Fedora 7自己带有的jre以及jdk捏?首先根据我的经验,Fedora 7所带有的jre是gnu java,理论上来说应该是兼容sun java的,但是实际使用的时候却出现过很多此奇怪的毛病,为了避免不必要的麻烦,所以还是安装sun的产品比较好一点。而且反正安装一次,就装一个jdk好了,没准哪天堕落了,还要搞搞java开发。
去sun的网站下载最新版本的jdk with netbeans for linux,然后运行之,安装之。因为我习惯把所有的软件都安装在/usr/lib里面,并且不知道为什么要安装在其他的地方,所以我把我的jdk安装在了/usr/lib/jdk1.6.0_02,后面的配置也以此为准。
接下来配置alternatives。
alternatives --install /usr/bin/java java /usr/lib/jdk1.6.0_02/bin/java 2
alternatives --config java
然后选择2,配置好java。然后配置javac:
alternatives --install /usr/bin/javac javac /usr/lib/jdk1.6.0_02/bin/javac 2
alternatives --config javac
然后再选择2,至此jdk安装完成。至于环境变量的配置,后面再说。
接下来安装jena。
到jena网站下载最新的jena,解压缩放到你想要的地方。我还是放在了/usr/lib下面,因此就是/usr/lib/Jena-2.5.3。至于环境变量,还是最后再说。
接下来安装jruby。
到jruby网站下载最新的jruby,解压缩到你想要的地方。我还是放在了/usr/lib下面,因此就是/usr/lib/jruby-1.0.1……听着怎么这么耳熟……
因为jruby的gem和ruby的gem名字是一样的,为了避免不必要的麻烦,我没有把jruby的bin放到环境变量里面,而是直接在/usr/bin里面做了三个连接,具体如下:
/usr/bin/jruby >> /usr/lib/jruby-1.0.1/bin/jruby
/usr/bin/jirb >> /usr/lib/jruby-1.0.1/bin/jirb
/usr/bin/jgem >> /usr/lib/jruby-1.0.1/bin/gem
这样jruby就安装完成鸟。
接下来在jruby下面安装activerdf和activerdf_jena。
在终端中运行jgem install activerdf就可以安装activerdf鸟,但是安装activerdf_jena有点麻烦。
安装activerdf_jena之前需要安装activerdf_sparql,这里注意首先安装json_pure:
jgem install json_pure
然后访问http://gems.rubyforge.org,下载1.3.3版本的activerdf_sparql,手动安装activerdf_sparql:
jgem install /path/to/activerdf_sparql_1.3.3.gem
因为直接自动安装activerdf_sparql是安装的1.3.4版本的,会出现一些问题,所以需要手动安装一下。至于具体什么麻烦,木哈哈,你装一次就知道了。
安装好activerdf_sparql之后就可以安装activerdf_jena了:
jgem install activerdf_jena
至此,所有在root用户下的安装工作完成。接下来到你需要使用这些工具的用户下配置环境变量。
用自己的用户登录,在用户主目录下打开隐藏文件.bashrc,在文件末尾加入如下内容:
JAVA_HOME=/usr/lib/jdk1.6.0_02
export JAVA_HOME
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/tools.jar:/usr/lib/Jena-2.5.3/lib/antlr-2.7.5.jar:/usr/lib/Jena-2.5.3/lib/arq-extra.jar:/usr/lib/Jena-2.5.3/lib/arq.jar:/usr/lib/Jena-2.5.3/lib/commons-logging-1.1.jar:/usr/lib/Jena-2.5.3/lib/concurrent.jar:/usr/lib/Jena-2.5.3/lib/icu4j_3_4.jar:/usr/lib/Jena-2.5.3/lib/iri.jar:/usr/lib/Jena-2.5.3/lib/jena.jar:/usr/lib/Jena-2.5.3/lib/jenatest.jar:/usr/lib/Jena-2.5.3/lib/json.jar:/usr/lib/Jena-2.5.3/lib/junit.jar:/usr/lib/Jena-2.5.3/lib/log4j-1.2.12.jar:/usr/lib/Jena-2.5.3/lib/lucene-core-2.0.0.jar:/usr/lib/Jena-2.5.3/lib/stax-api-1.0.jar:/usr/lib/Jena-2.5.3/lib/wstx-asl-3.0.0.jar:/usr/lib/Jena-2.5.3/lib/xercesImpl.jar:/usr/lib/Jena-2.5.3/lib/xml-apis.jar
export CLASSPATH
PATH=$JAVA_HOME/bin:$PATH
export PATH
注意这里要修改jdk和jena的安装路径到你自己的安装路径。保存,退出,reboot,恭喜你,所有安装完成!