php與java的橋接--javabridge
2008-03-05 17:26由於項目需要,須用php調用java,嘗試了一下兩種方式橋接(本機測試,windows)一:.用php模組php_java.dll1.配置php.ini檔案去掉;extension=php_java.dll前面的分號[java]java.library=E:\project\eclipse\jre\bin\client\jvm.dlljava.home=E:\project\eclipse\jre\java.library.path=E:\project\xampp\php\ext\ java.class.path=E:\project\xampp\php\ext\php_java.jar其中java.library是java虛擬機器的路徑,java.home是java的路徑,java.library.path是php擴充的路徑,java.class.path是php_java.jar的路徑2.重啟apache3.測試代碼try { $system = new Java('java.lang.System'); // demonstrate property access echo 'Java version=' . $system->getProperty('java.version') . '
'; echo 'Java vendor=' . $system->getProperty('java.vendor') . '
'; echo 'OS=' . $system->getProperty('os.name') . ' ' . $system->getProperty('os.version') . ' on ' . $system->getProperty('os.arch') . '
';}catch (JavaException $e){ echo $e->getCause();}測試結果為Java version=1.5.0_09Java vendor=Sun Microsystems Inc.OS=Windows XP 5.1 on x86注:php5測試時apache 死掉,php4能運行,沒找到具體原因,估計是無法載入java虛擬機器二:用javabridge橋接1.下載php-java-bridge_5.2.0_j2ee.zip 解壓,並能看到JavaBridge.war,可用winrar解壓 在JavaBridge\WEB-INF\lib裡有個JavaBridge.jar檔案,命令列下調用java –jar JavaBridge.jar或者雙擊JavaBridge.jar,在彈出的視窗中選擇監聽連接埠2.將JavaBridge裡的java這個檔案夾整個的複製到PHP檔案目錄中3.測試require_once("java/java.inc");try { $system = new Java('java.lang.System'); // demonstrate property access echo 'Java version=' . $system->getProperty('java.version') . '
'; echo 'Java vendor=' . $system->getProperty('java.vendor') . '
'; echo 'OS=' . $system->getProperty('os.name') . ' ' . $system->getProperty('os.version') . ' on ' . $system->getProperty('os.arch') . '
';}catch (JavaException $e){ echo $e->getCause();}測試結果Java version=1.5.0_09Java vendor=Sun Microsystems Inc.OS=Windows XP 5.1 on x86到此基本php與java的橋接就基本完成