linux下安装javabridge和clucene

来源:互联网 发布:u盘启动linux 编辑:程序博客网 时间:2024/05/21 23:50

最近在linux下安装php的扩展clucene和javabridge时,总结出几点经验:
 
一、安装clucene
1.在clucene.sourceforge.net,下载clucene 0.9.10
2.编译clucene

tar xzvf clucene-0.9.10.tar.gz
cd clucene-0.9.10
./autogen.sh
./configure
make

3.为了让其它程序可以调用clucene,这里把编译好的lib放到系统lib目录下

cp src/.libs/libclucene.* /usr/local/lib
cp src/CLucene.h /usr/local/include/
cp -r src/CLucene /usr/local/include/

4.下载安装clucene php extension http://pecl.php.net/package/clucene

tar xzvf clucene-0.0.9.tgz
cd clucene-0.0.9
cp -r /usr/local/include/Clucene include/  #编译时要把clucene的include文件弄一份
cp -r /usr/local/include/Clucene.h include/
phpize
./configure
make

编译完成,这里会生成一个clucene.so,我们把它放在php的扩展目录下,然后修改php.ini

加入
extension=clucene.so

完成!

二、安装php-javabridge

php-javabridge比起pecl的java扩展有着多方面的优势,下面介绍一下在linux下安装javabridge的过程

1、首页要安装jdk

下载jdk-1_5_0_05-linux-i586.bin

复制到/usr/local目录

为jdk*.bin加上执行权限chmod +x jdk...*.bin

运行安装

./ jdk-1_5_0_05-linux-i586.bin

建立符号连接
ln -s jdk-1_5_0_05-linux-i586 jdk

设置环境变量:

编辑/etc/profile

加入或修改:

JAVA_HOME=/usr/local/jdk
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib

修改原来的export语句为:

export JAVA_HOME CLASSPATH PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC


2、安装javabridge(假设您的apache+php已经安装好)

在sf上下载javabridge的源码版,解压

tar -jxvf php-java-bridge_3.1.0devel4.tar.tar

cd php-java-bridge*xxx

/path-php-install/bin/phpize

./configure --with-java=$JAVA_HOME --with-php-config=/path-php-install/bin/php-config

make && make install

完成后,会在php安装目录的lib/php/extensions下有一个目录(目录名可能有所不同),将该目录的下的所有文件复制到php.ini中指定的extension_dir,当然,您也可以以前为extension_dir

修改php.ini,加入

extension=java.so

[java]

java.java_home="/usr/local/jdk"
java.java="/usr/local/jdk/jre/bin/java"
java.log_file="/var/log/php-java-bridge.log"
java.classpath="/web/php/ext/JavaBridge.jar"
java.libpath="/web/php/ext/"

重启apache,看看是否成功了!(成功后,phpinfo中有java扩展,并且java status一栏的值为running

特别注意:

1、phpize需在解压后的源码包下执行,执行后生成configure脚本

2、运行./configure时,如果提示

configure: error: Cannot find php-config. Please use --with-php-config=PATH
请使用:

./configure --with-php-config=/php-install-path/bin/php-config #而不是使用php.ini

3、php.ini中

java.libpath="/web/php/ext/ 是指安装后包含有jar等全部文件的目录,

默认值类似:/php-install-path/lib/php/extensions/no-debug-non-zts-20050922

 

原创粉丝点击