red hat linux 9下配置和应用lucene 2.9.1
1.环境介绍
操作系统:red hat linux 9.0
Lucene版本: lucene-2.9.1 下载 http://apache.etoak.com/lucene/java/
2.配置前提
2.1 安装JDK 1.6
第一步:# chmod +x jdk-1_6_0_13-linux-i586-rpm.bin (此命令用于获得执行权限)
第二步:# ./jdk-1_6_0_13-linux-i586-rpm.bin (用来生成rpm安装包)
第三步:# rpm -ivh jdk-1_6_0_13-linux-i586.Rpm(此命令来来安装JDK)
安装完毕后,jdk安装在/usr/java/目录下。(安装时会创建此目录)
最后一步:配置JDK的环境变量。
1): #vi /etc/profile.d/java.sh (意思是用vi 编辑器打开这个文件)
2): 在java.sh 里面输入这些内容。
#set java environment
export JAVA_HOME=/usr/java/ jdk1.6.0_13
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
3): #chmod +x /etc/profile.d/java.sh
这样就算配置好了。
建议在/etc/profile中设置环境变量
[root@red-hat-9 root]# vi /etc/profile
加入以下语句:
JAVA_HOME=/usr/java/jdk1.6.0_13 export JAVA_HOME CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib (注意是冒号) export CLASSPATH PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH |
[root@red-hat-9 root]# chmod +x /etc/profile (执行权限)
[root@red-hat-9 root]# source /etc/profile (此后设置有效)
3 配置lucene
3.1 安装ant(可选)
(1)下载apache-ant-1.7.1到某一目录下(如/root),
http://apache.etoak.com/ant/binaries/apache-ant-1.7.1-bin.tar.gz
(2)安装即解压到某目录下(/zkl/programe)
[root@red-hat-9 root]# tar zxvf apache-ant-1.7.1-bin.tar.gz
[root@red-hat-9 root]# mv apache-ant-1.7.1 /zkl/programe
(3)设置ant的环境变量
[root@red-hat-9 root]# vi /etc/profile
加上以下语句
ANT_HOME=/zkl/program/apache-ant-1.7.1 export ANT_HOME PATH=$PATH:$ANT_HOME/bin |
[root@red-hat-9 root]# source /etc/profile (此后设置有效)
3.2 安装javacc(可选)
(1)下载javacc-5.0 (javacc官方网址是https://javacc.dev.java.net/)
https://javacc.dev.java.net/files/documents/17/138911/javacc-5.0.tar.gz
(2)安装即解压到某目录下/zkl/program
[root@red-hat-9 root]# gunzip javacc-5.0.tar.gz
[root@red-hat-9 root]# tar -xvf javacc-5.0.tar
[root@red-hat-9 root]# mv javacc-5.0 /zkl/program
3.3 解压安装lucene
(1)下载lucene-2.9.1
http://apache.etoak.com/lucene/java/lucene-2.9.1.tar.gz
(2)解压到某目录下/zkl/ir/lucene
[root@red-hat-9 root]#tar xf lucene-2.9.1.tar.gz
[root@red-hat-9 root]#mv lucene-2.9.1 /zkl/ir/lucene
(3)完成后,lucene的主目录是/zkl/ir/lucene/lucene-2.9.1
3.3 build lucene(可选)
此步不是必须的,因为下载下来的lucene实际上已经构建好了。
(1)再用户主目录~/下生成build.properties文件,并写入javacc主目录
[root@red-hat-9 root]#cd /zkl/ir/lucene/lucene-2.9.1
[root@red-hat-9 lucene-2.9.1]#
echo "javacc.home=/zkl/program /javacc-5.0" > ~/build.properties
(2)运行ant,进行构建
[root@red-hat-9 lucene-2.9.1]# /zkl/program/apache-ant-1.7.1/bin/ant
Buildfile: build.xml
jar.core-check:
compile-demo:
BUILD SUCCESSFUL (构建成功)
Total time: 0 seconds
3.4 配置lucene环境变量
[root@red-hat-9 root]# vi /etc/profile
加上以下语句
LUCENE_HOME=/zkl/ir/lucene/lucene-2.9.1 CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$LUCENE_HOME/lucene-core-2.9.1.jar:$LUCENE_HOME/lucene-demos-2.9.1.jar (注意是冒号) |
[root@red-hat-9 root]# source /etc/profile (此后设置有效)
到此/etc/profile中添加的环境变量如下(见文件profile.txt):
4 测试lucene
(1)利用src/demo中的IndexFiles建索引,利用SearchFiles搜索
此示例运行后会在/zkl/ir/lucene/lucene-2.9.1/src/demo目录下创建存储已经建好的索引的目录index,而重新运行时要把index先删除。SearchFiles是根据建好的存储在demo/index中的索引来搜索文件,输入关键字即可。
①首先我建立一个/zkl/ir/index_files目录,来存储需要建立索引的文件,我在目录下创建一些文件;
②然后我调用demo示例,首先进入demo目录,然后执行以下命令
java org/apache/lucene/demo/IndexFiles /zkl/ir/index_files/
这将/zkl/ir/index_files/目录下的文件建立索引并存储在demo/index下;
然后运行以下命令搜索文件
java org/apache/lucene/demo/SearchFiles
③如果允许这两个命令出现异常提示,说明是lucene的环境变量有问题,出现了异常说明java环境变量没问题,
此外执行命令时,请注意是java org/apache/lucene/demo/SearchFiles
这里是SearchFiles,而不是SearchFiles.java。
当你进入org/apache/lucene/demo/目录下时,你将会发现目录下只有一些.java文件,它们没有编译怎么能运行呢,实际上这是因为luncene原来已经把demo打包成了lucene-demos-2.9.1.jar,而你在classpath环境变量中引入了,所以能够运行。
④运行SearchFiles时,每输入一个关键字,查询结束,你需要先按以下回车,然后输入关键字,再进行下一次查询。