星期三

php/java bridge 安裝教學

php-java-bridge 是可以讓PHP在Server端和Java溝通的工具



即是可以在PHP裡直接使用JAVA編譯好的class檔



不多說廢話,趕快交大家安裝方法



1、首先確定你的PHP和Apache伺服器及JDK(or JRE也可)都已安裝完成 <-----這不用我教吧



2、上網下載php-java-bridge(自行找戴點 or http://sourceforge.net/project/showfiles.php?group_id=117793 )



3、將下載回來的 php-java-bridge解壓縮,解壓後資料匣裡會有一個JavaBridge.war,再同樣將這個JavaBridge.war解壓縮(win rar即可解)



4、解壓後可從 WEB-INF資料匣裡的cgi資料匣找到java-x86-windows.dll,及WEB-INF資料匣裡的lib資料匣找到JavaBridge.jar



5、將java-x86-windows.dll和JavaBridge.jar 複制到PHP的外掛資料匣(我這邊是C:\AppServ\php\ext),並將java-x86-windows.dll改成php_java.dll



6、修改php.ini檔案



如果php.ini原本沒有以下內容,請自行加上,如果原本就有以下內容,請修改成如下



extension=php_java.dll

[Java]

java.socketname = 9267

java.java = C:\Program Files\Java\jdk1.5.0_08\bin\java <---如果是用JDK執行就寫這行

java.java_home = C:\Program Files\Java\jdk1.5.0_08 <---如果是用JDK執行就寫這行

java.java = C:\Program Files\Java\jre1.5.0_07\bin\javaw <---用JRE執行就寫這行

java.java_home = C:\Program Files\Java\jre1.5.0_07 <---用JRE執行就寫這行

java.log_level = 2



7、重新起動Apache



8、從解壓的JavaBridge.war資料匣裡找到test.php,把它放到Apache伺服器的網頁目錄下去執行(我這邊是http://localhost/test.php)



9、執行 http://localhost/test.php



觀看JAVA這一項



java

java support Enabled

java bridge 3.1.8rc1

java.java_home C:\Program Files\Java\jre1.5.0_07

java.java C:\Program Files\Java\jre1.5.0_07\bin\javaw

java.log_file

java.log_level 2

java.persistent_connections On

java.security_policy Off

java command C:\Program Files\Java\jre1.5.0_07\bin\javaw -Djava.library.path=C:\AppServ\php\ext -Djava.class.path=C:\AppServ\php\ext/JavaBridge.jar -Djava.awt.headless=true -Dphp.java.bridge.base=C:\AppServ\php\ext php.java.bridge.Standalone INET_LOCAL:9267 2

java status not running

java server 9267



看倒數第二項 java status的狀態是不是not running (這是因為你沒有啟動JavaBridge.jar)



10、因為不可能每次開機都手動去啟動JavaBridge.jar



所以我們寫一個批次檔,內容如下



@echo off

start javaw -jar JavaBridge.jar



把它存成phpJavaBridge.bat,同樣放在PHP的外掛資料匣裡(這裡是C:\AppServ\php\ext)



把該檔建立捷徑,把建立好的捷徑放到啟動裡(這裡是C:\Documents and Settings\All Users\「開始」功能表\程式集\啟動)



這樣一來,以後每次開機後就會自動啟動C:\AppServ\php\ext 資料匣裡的phpJavaBridge.bat



11、重開機後,開啟流覽器再從新執行http://localhost/test.php



再次觀看JAVA選項



java

java support Enabled

java bridge 3.1.8rc1

java.java_home C:\Program Files\Java\jre1.5.0_07

java.java C:\Program Files\Java\jre1.5.0_07\bin\javaw

java.log_file

java.log_level 2

java.persistent_connections On

java.security_policy Off

java command C:\Program Files\Java\jre1.5.0_07\bin\javaw -Djava.library.path=C:\AppServ\php\ext -Djava.class.path=C:\AppServ\php\ext/JavaBridge.jar -Djava.awt.headless=true -Dphp.java.bridge.base=C:\AppServ\php\ext php.java.bridge.Standalone INET_LOCAL:9267 2

java status running

java server 9267



倒數第二項 java status ,這次狀態應該變成running <----代表JavaBridge.jar已啟動,已可正式使用php-java-bridge



12、簡單範例




getProperty('java.version')."
";
echo "發行廠商".$system->getProperty('java.vendor')."
";
echo "作業系統版本".$system->getProperty('os.name')."
";
echo "java版本".$system->getProperty('os.version')."
";
echo "java版本".$system->getProperty('os.arch')."
";
?>
13、如果是自訂的類別,而不是JAVA內建的類別,則需要把該類別先打包成jar



再用下面的方式匯入jar檔案



java_require("http://localhost/Test.jar");

or

java_set_library_path("file:D:/www/Test.jar");

沒有留言:

張貼留言