目錄
本项目需要软件:" >本项目需要软件:
1.配置PHP+MySql+Apache
1.1使用安装包进行安装
1.2测试php环境
1.3 IDE
2配置Java环境
2.1安装jdk
2.2测试
3使用JavaBridge
3.1软件需求
3.2运行JavaBridge
3.3测试JavaBridge
3.4在PHP中调用自己创建的JAVA 类
4 SVN
首頁 php教程 php手册 PHP+JavaBridge完整环境配置

PHP+JavaBridge完整环境配置

Jun 22, 2016 pm 08:00 PM
java php 程式碼 開源 環境配置 程式設計 程式設計語言 軟體開發

 

环境:64位win7操作系统

本项目需要软件:

Xampp(xampp-win32-1.8.1-VC9-installer)安装包:http://www.apachefriends.org/zh_cn/xampp-windows.html#1787

EclipsePHP Studio3http://epp.php100.com/#down

Php java-bridge(php-java-bridge_6.2.1_documentation.zip): http://php-java-bridge.sourceforge.net/pjb/download.php

JDK( 我们使用的版本为:Java(TM)Plaform SE 7 U5即jdk-7u5-windows-x64.exe):在oracle官网可下

1.配置PHP+MySql+Apache

许多人通过他们自己的经验认识到安装 Apache 服务器是件不容易的事儿。如果您想添加 MySQL、PHP 和 Perl,那就更难了。

XAMPP 是一个易于安装且包含 MySQL、PHP 和 Perl 的 Apache 发行版。XAMPP 的确非常容易安装和使用:只需下载,解压缩,启动即可。

1.1使用安装包进行安装

使用安装包来安装 XAMPP 是最简单的方法。

image

XAMPP win32 的安装向导
安装过程结束后,您会在 开始/程序/XAMPP 菜单下找到 XAMPP。您可以使用 XAMPP 控制面板来启动/停止所有服务或安装/卸载所有服务。

image

XAMPP 控制面板能启动/停止 Apache、MySQL、FilaZilla 和 Mercury,或直接将其安装为服务

1.2测试php环境

编写helloworld.php并放入xampp安装目录下的htdocs文件夹

在浏览器端输入http://localhost/helloworld.php。并得到以下输出,则表示正确。

image

1.3 IDE

安装EclipsePHP Studio3,并将工作空间指向XAMPP目录下的htdocs,启动xampp,这样编写的php文件就直接保存在htdocs文件夹内,可以直接调试。

image

 

image

2配置Java环境

2.1安装jdk

得到JDK的安装文件,点击安装,如图所示:

image

 

 

· 安装成功后,假设安装路径为C:\Program Files\Java\jdk1.7.0_05,右键点击我的电脑选择Properties,得到界面如图:

image

 

· 点击Advanced system settings,得到界面如图:

image

 

· 点击Environment Variables…得到界面如图:

image

 

 

· 在System variables中找到Path并双击进行编辑,得到界面如图:

image

 

 

· 在Variable value的末尾加上“;”和JDK和Jre的bin文件夹,即“;C:\Program Files\Java\jre7\bin;C:\Program Files\Java\jdk1.7.0_05\bin”,点击OK即可,如图:

image

2.2测试

在键盘上键入WINDOWS+R,并在open栏中输入cmd,回车,进入命令行。键入java -version并按Enter键,若得到界面如下图所示,即JDK环境配置成功。

image

3使用JavaBridge

3.1软件需求

Ø php-java-bridge_6.2.1_documentation.ziphttp://php-java-bridge.sourceforge.net

Ø JavaBridge.jar:将上面的php-java-bridge_6.2.1_documentation.zip解压得到一个JavaBridge.war,将JavaBridge.war重命名为JavaBridge.jar,再次用WinRAR对JavaBridge.jar解压到JavaBridge目录,在JavaBridge\WEB-INF\LIB里面可以找到JavaBridge.jar。

Ø Lucene.jar:将上面的php-java-bridge_6.2.1_documentation.zip解压得到一个JavaBridge.war,将JavaBridge.war重命名为JavaBridge.jar,再次用WinRAR对JavaBridge.jar解压到JavaBridge目录,在JavaBridge\WEB-INF\LIB里面可以找到Lucene.jar。

Ø JDK:JavaBridge是由Java语言实现的,所以必须安装JDK实现对jar文件执行提供支持。

3.2运行JavaBridge

双击运行JavaBridge.jar,应该会弹出一个可以选择的对话框,如果没有弹出,是因为没有安装JDK或者文件关联错误,解决方法是安装JDK或者运行“start javaw -jar JavaBridge.jar”(内容保存到*.bat里面,而*.bat与JavaBridge.jar同一个目录)替代双击。弹出对话框后不用选择,直接点击“确定”即可。正确如下:

image

3.3测试JavaBridge

新建一个test.php(*.php xampp安装目录下的htdocs文件夹)文件,内容如下:

require_once("java/Java.inc");

// get instance of Java class java.lang.System in PHP

$system = new Java('java.lang.System');

$s = new Java("java.lang.String", "php-java-bridge config...

");

echo $s;

// demonstrate property access

print 'Java version='.$system->getProperty('java.version').'
';

print 'Java vendor=' .$system->getProperty('java.vendor').'
';

print 'OS='.$system->getProperty('os.name').' '.

$system->getProperty('os.version').' on '.

$system->getProperty('os.arch').'
';

// java.util.Date example

$formatter = new Java('java.text.SimpleDateFormat',

"EEEE, MMMM dd, yyyy 'at' h:mm:ss a zzzz");

print $formatter->format(new Java('java.util.Date'));

?>

Java.inc应该放到java目录下,而java应该与test.php同目录,解压JavaBridge.jar可以在JavaBridge\META-INF里面找到java目录,完全拷贝java目录与test.php同目录。执行test.php得到如下输出或类似输出则表现正确:

3.4在PHP中调用自己创建的JAVA 类

非开发人员可以略过本节。

得到上面输出说明JavaBridge安装成功了,PHP可能调用JAVA内部的类,下面使用Java编写自己的类,而PHP则调用自己写的Java类。

为了尽排除错误,先建立一个EchoHello.java进行测试,代码如下:

public class EchoHello

{

public String test()

{

return "conguratulation php can call methods from java";

}

}

在Eclipse中执行一次EchoHello.java,会在工程目录下的BIN目录下生成EchoHello.class文件,将EchoHello.class拷贝到C:\Program Files\Java\jre7\classes目录下,因为版本号的不同,jre7文件夹名字可能不同。安装JDK时候默认没有C:\Program Files\Java\jre7\classes,需要手动建立。

测试自己的JAVA类,修改test.php代码如下:

include_once("java/java.inc");

$eh = new Java("EchoHello");

echo $eh->test();

?>

需要重新启动JavaBridge.jar再运行test.php方法是:到任务管理器里面结束java.exe和javaw.exe,重新双击运行javaBridge.jar,不用选择下列列表,直接“确定”即可。

运行test.php得到"conguratulation php can call methods from java"的输出可以进行下一步,否则重复上面的步骤。

4 SVN

TortoiseSVN 64位的1.7.10:http://tortoisesvn.net/downloads.zh.html

同时下载汉语言包进行安装。

在http://tortoisesvn.net/support.zh.html svn使用帮助文档。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1666
14
CakePHP 教程
1425
52
Laravel 教程
1323
25
PHP教程
1272
29
C# 教程
1251
24
IIS和PHP的兼容性:深度潛水 IIS和PHP的兼容性:深度潛水 Apr 22, 2025 am 12:01 AM

IIS和PHP可以兼容,通過FastCGI實現。 1.IIS通過配置文件將.php文件請求轉發給FastCGI模塊。 2.FastCGI模塊啟動PHP進程處理請求,提高性能和穩定性。 3.實際應用中需注意配置細節、錯誤調試和性能優化。

如果session_start()被多次調用會發生什麼? 如果session_start()被多次調用會發生什麼? Apr 25, 2025 am 12:06 AM

多次調用session_start()會導致警告信息和可能的數據覆蓋。 1)PHP會發出警告,提示session已啟動。 2)可能導致session數據意外覆蓋。 3)使用session_status()檢查session狀態,避免重複調用。

C的未來:改編和創新 C的未來:改編和創新 Apr 27, 2025 am 12:25 AM

C 的未來將專注於並行計算、安全性、模塊化和AI/機器學習領域:1)並行計算將通過協程等特性得到增強;2)安全性將通過更嚴格的類型檢查和內存管理機制提升;3)模塊化將簡化代碼組織和編譯;4)AI和機器學習將促使C 適應新需求,如數值計算和GPU編程支持。

C:死亡還是簡單地發展? C:死亡還是簡單地發展? Apr 24, 2025 am 12:13 AM

1)c relevantduetoItsAverity and效率和效果臨界。 2)theLanguageIsconTinuellyUped,withc 20introducingFeaturesFeaturesLikeTuresLikeSlikeModeLeslikeMeSandIntIneStoImproutiMimproutimprouteverusabilityandperformance.3)

作曲家:通過AI的幫助開發PHP 作曲家:通過AI的幫助開發PHP Apr 29, 2025 am 12:27 AM

AI可以幫助優化Composer的使用,具體方法包括:1.依賴管理優化:AI分析依賴關係,建議最佳版本組合,減少衝突。 2.自動化代碼生成:AI生成符合最佳實踐的composer.json文件。 3.代碼質量提升:AI檢測潛在問題,提供優化建議,提高代碼質量。這些方法通過機器學習和自然語言處理技術實現,幫助開發者提高效率和代碼質量。

在Java的背景下,'平台獨立性”意味著什麼? 在Java的背景下,'平台獨立性”意味著什麼? Apr 23, 2025 am 12:05 AM

Java的平台獨立性是指編寫的代碼可以在任何安裝了JVM的平台上運行,無需修改。 1)Java源代碼編譯成字節碼,2)字節碼由JVM解釋執行,3)JVM提供內存管理和垃圾回收功能,確保程序在不同操作系統上運行。

session_start()函數的意義是什麼? session_start()函數的意義是什麼? May 03, 2025 am 12:18 AM

session_start()iscucialinphpformanagingusersessions.1)ItInitiateSanewsessionifnoneexists,2)resumesanexistingsessions,and3)setsasesessionCookieforContinuityActinuityAccontinuityAcconActInityAcconActInityAcconAccRequests,EnablingApplicationsApplicationsLikeUseAppericationLikeUseAthenticationalticationaltication and PersersonalizedContentent。

幕後:什麼語言能力JavaScript? 幕後:什麼語言能力JavaScript? Apr 28, 2025 am 12:01 AM

JavaScript在瀏覽器和Node.js環境中運行,依賴JavaScript引擎解析和執行代碼。 1)解析階段生成抽象語法樹(AST);2)編譯階段將AST轉換為字節碼或機器碼;3)執行階段執行編譯後的代碼。

See all articles