[PHP-users 5481] PHPとJAVAの連携に関して
川本 由紀子
php-users@php.gr.jp
Mon, 18 Feb 2002 13:42:28 +0900
こんにちは。はじめて投稿します。
今、PHPからJAVAのクラスがロードできるようにPHPのインストール、設定を行ってい
ます。
./configureオプションには
--with-java=/usr/java/jdk1.3.1_02 \
--enable-track-vars
を追加してインストールしました。
これに関するサイトを参考にして
http://www.ganekun.com/instructions/php/JavaFromPHP.html
・/usr/local/lib/php.ini を
[Java]
java.class.path = /usr/local/lib/php/php_java.jar
java.home = /usr/java/jdk1.3.1_02
java.library = /usr/java/jdk1.3.1_02/jre/lib/i386/classic/libjvm.so
extension_dir = /usr/local/lib/php/extensions/
extension = libphp_java.so
java.library.path=/usr/local/lib/php/extensions:
/usr/java/jdk1.3.1_02/jre/lib/i386:
/usr/java/jdk1.3.1_02/jre/lib/i386/classic:
/usr/java/jdk1.3.1_02/jre/lib/i386/native_threads
・/etc/ld.so.conf を
/usr/lib
/usr/kerberos/lib
/usr/X11R6/lib
/usr/local/lib
/usr/lib/qt-2.3.0/lib
/usr/local/pgsql/lib
/usr/java/jdk1.3.1_02/jre/lib/i386 (←追加)
/usr/java/jdk1.3.1_02/jre/lib/i386/classic (←追加)
/usr/java/jdk1.3.1_02/jre/lib/i386/native_threads (←追加)
/usr/java/jdk1.3.1_02/jre/lib/i386/green_threads (←追加)
と 修正し、ldconfigを実行しました。
それでサンプルを実行させたところ、
<sample.php> --------------------------------------------------------
<?php
$system = new Java("java.lang.System");
echo "Seconds since 01/01/1970: [".$system->currentTimeMillis()."]"; flush();
?>
---------------------------------------------------------------------
Fatal error: Unable to load Java Library
/usr/java/jdk1.3.1_02/jre/lib/i386/classic/libjvm.so,
error: /usr/java/jdk1.3.1_02/jre/lib/i386/classic/libjvm.so:
undefined symbol: jdk_sem_post in /data/web/sample_java.php on line 2
とエラーメッセージが表示され、ライブラリの読み込みができてないようなのです。
/usr/java/jdk1.3.1_02/jre/lib/i386/classic/libjvm.so
にはちゃんとファイルがあります。
undefined symbol: jdk_sem_post というのもいろんなサイトを見てみたのですが、
原因がつかめず、解決できずにいます。(T_T)
PHPは4.0.6、apacheは1.3.20、LinuxはRedHat7.1です。
インストールの方法、ファイルの書き換えなどまずい点はどこなのでしょうか?
ご教授頂きたいと思います。どうぞ宜しくお願いします。m(__)m
------------------------------------------------------
正晃株式会社 情報機器部 システム開発室
川本 由紀子
〒813-0062 福岡市東区松島 3-34-33
Phone: 092-621-9217 Fax: 092-622-9755
------------------------------------------------------