`
thomas0988
  • 浏览: 487732 次
  • 性别: Icon_minigender_1
  • 来自: 南阳
社区版块
存档分类
最新评论

PHP/Java Bridge

阅读更多

安装PHP/Java Bridge<o:p></o:p>

如果你用的是RedHat Linux系统(RedHat EnterpriseFedora),可以从主页上下载32RPM包,然后输入rpm -i php-java-bridge-v.x.y-z-i386.rpm来安装。如果你用的是64位系统和64位虚拟机,需要安装64RPM包。其它系统看下面的介绍。<o:p></o:p>

(1) 安装PHP/Java Bridge之前,你需要确定已经安装了:
Java1.4
或更高版本,
gcc3.2
或更高版本,
apache1.3
或更高版本,
autoconf2.57
或更高版本,Done
libtool 1.4.3
或更高版本, Done
automake1.6.3
或更高版本,
GNU make Done
php4.3.2
或更高版本<o:p></o:p>

你可以用命令java -version, gcc --version, apachectl -version, libtool --version, automake --version, make null --version, autoconf --version and php-config –version来确定这些软件包的版本。<o:p></o:p>

<o:p></o:p>

(2) 下载PHP/Java Bridge的源代码
http://www.sourceforge.net/projects/php-java-bridge<o:p></o:p>

(3)
解压缩:cat php-java-bridge_v.x.y.tar.bz2 | bunzip2 | tar xf –<o:p></o:p>

(4)

在解压缩出来的目录php-java-bridge-v.x.y里执行命令:

phpize && ./configure --disable-servlet --with-java=/opt/IBMJava2-14 && make CFLAGS="-m32"<o:p></o:p>

32JVM生成模块。<o:p></o:p>

(5)安装生成的模块
su -c make install
<enter password><o:p></o:p>

(6) PHP/Java Bridge可以作为WEB服务器的sub-component运行,把下面这行加入到php.ini中,或者把这一行写到一个文件java.ini,再把java.ini复制到包含php模块描述的目录中去,如/etc/php.d/<o:p></o:p>

extension = java.so
[java]
<o:p></o:p>

(7)重启apache服务器:/www/apache/bin/apachectl restart<o:p></o:p>

(8)现在开始可以测试web安装。复制test.php到站点根目录下( /var/www/html),通过浏览器访问。你可以看到bridge模块已经激活并正在运行。Bridge会随着服务器的启动而启动。

Test.php<o:p></o:p>

<?php

phpinfo();

print "\n\n";

<o:p> </o:p>

$v = new java("java.lang.System");

$arr=$v->getProperties();

foreach ($arr as $key => $value) {

  print $key . " -> " .  $value . "<br>\n";

}

?>

 

Windows平台下的安装:<o:p></o:p>

<--[if !supportLists]-->1.              <--[endif]-->解压缩php-java-bridge_2.0.4-win32-php5.zip,复制所有文件到C:\php<o:p></o:p>

<--[if !supportLists]-->2.              <--[endif]-->双击c:\php5\JavaBridge.jar或者在命令行执行java -jar JavaBridge.jar<o:p></o:p>

<--[if !supportLists]-->3.              <--[endif]-->php-cgi test.php >result.html    (test.php源码见上例)<o:p></o:p>

<--[if !supportLists]-->4.              <--[endif]-->用浏览器打开result.html,即可看到运行结果 <o:p></o:p>

<o:p> </o:p>

段测试程序首先把php环境的所有选项输出,然后新建了一个Java对象并返回它的相关信息。

<o:p> </o:p>

运行结果:

<--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"></v:path><o:lock v:ext="edit" aspectratio="t"></o:lock></v:shapetype><v:shape id="_x0000_i1025" style="WIDTH: 415.5pt; HEIGHT: 273pt" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\Haohappy\LOCALS~1\Temp\msohtml1\01\clip_image001.png" o:title="pjbridge_win"></v:imagedata></v:shape><[endif]--><--[if !vml]--><--[endif]-->

<o:p> </o:p>

java.runtime.name -> Java(TM) 2 Runtime Environment, Standard Edition
sun.boot.library.path -> C:\Program Files\Java\j2re1.4.2_05\bin
java.vm.version -> 1.4.2_05-b04
java.vm.vendor -> Sun Microsystems Inc.
java.vendor.url -> http://java.sun.com/
path.separator -> ;
java.vm.name -> Java HotSpot(TM) Client VM
file.encoding.pkg -> sun.io
user.country -> CN
sun.os.patch.level -> Service Pack 2
java.vm.specification.name -> Java Virtual Machine Specification
user.dir -> C:\php
java.runtime.version -> 1.4.2_05-b04
java.awt.graphicsenv -> sun.awt.Win32GraphicsEnvironment
java.endorsed.dirs -> C:\Program Files\Java\j2re1.4.2_05\lib\endorsed
os.arch -> x86
java.io.tmpdir -> C:\DOCUME~1\506C\LOCALS~1\Temp\
line.separator ->
java.vm.specification.vendor -> Sun Microsystems Inc.
user.variant ->
os.name -> Windows XP
sun.java2d.fontpath ->
java.library.path -> C:\Program Files\Java\j2re1.4.2_05\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\j2sdk1.4.2_05\bin;.;C:\j2sdk1.4.2_05\lib;C:\j2sdk1.4.2_05\jre\lib;C:\Program Files\SecureCRT 3.0;C:\WINDOWS\system32;C:\Program Files\ChemOffice2002\Common\DLLs
java.specification.name -> Java Platform API Specification
java.class.version -> 48.0
java.util.prefs.PreferencesFactory -> java.util.prefs.WindowsPreferencesFactory
os.version -> 5.1
user.home -> C:\Documents and Settings\506C
user.timezone ->
java.awt.printerjob -> sun.awt.windows.WPrinterJob
file.encoding -> GBK
java.specification.version -> 1.4
java.class.path -> C:\php\JavaBridge.jar
user.name -> 506C
java.vm.specification.version -> 1.0
java.home -> C:\Program Files\Java\j2re1.4.2_05
sun.arch.data.model -> 32
user.language -> zh
java.specification.vendor -> Sun Microsystems Inc.
awt.toolkit -> sun.awt.windows.WToolkit
java.vm.info -> mixed mode
java.version -> 1.4.2_05
java.ext.dirs -> C:\Program Files\Java\j2re1.4.2_05\lib\ext
sun.boot.class.path -> C:\Program Files\Java\j2re1.4.2_05\lib\rt.jar;C:\Program Files\Java\j2re1.4.2_05\lib\i18n.jar;C:\Program Files\Java\j2re1.4.2_05\lib\sunrsasign.jar;C:\Program Files\Java\j2re1.4.2_05\lib\jsse.jar;C:\Program Files\Java\j2re1.4.2_05\lib\jce.jar;C:\Program Files\Java\j2re1.4.2_05\lib\charsets.jar;C:\Program Files\Java\j2re1.4.2_05\classes
java.vendor -> Sun Microsystems Inc.
file.separator -> \
java.vendor.url.bug -> http://java.sun.com/cgi-bin/bugreport.cgi
sun.io.unicode.encoding -> UnicodeLittle
sun.cpu.endian -> little
sun.cpu.isalist -> pentium i486 i386

<o:p> </o:p>

到这里,我们就可以自由地和Java对象进行通讯,实现了PHPJava的桥接。

<--[if !supportLists]-->5.              <--[endif]-->接下来修改你的php.iniC:\Windows\php.ini),把extension=php_java.dll前的分号;去掉<o:p></o:p>

注意, php也自带有一个php_java.dll,位于C:\php\extensions下,和php-java-bridge提供的不一样。为避免出错,要注意设置php.ini中的extension_dir ,默认extension_dir = "./"即指向C:\php目录。



 

参考资料:<o:p></o:p>

[1] JSR 223: Scripting for the JavaTM Platform

[2] PHP/Java Bridge @ sourceforge.net

分享到:
评论
1 楼 chenjun1634 2012-12-04  
学习中!!

相关推荐

    PHP/Java Bridge的JavaBridge.jar、php-servlet.jar和php-script.jar

    这个技术的关键在于它的几个核心组件,其中包括JavaBridge.jar、php-servlet.jar和php-script.jar,这些都是在Java和PHP集成环境中不可或缺的部分。 1. **JavaBridge.jar**: JavaBridge.jar是PHP/Java Bridge的...

    将PHP/Java Bridge的JavaBridge.jar、php-servlet.jar和php-script.jar

    "将PHP/Java Bridge的JavaBridge.jar、php-servlet.jar和php-script.jar"这个话题,就是关于如何实现PHP与Java之间的无缝集成。以下是这些组件的详细解释和相关知识点: 1. **JavaBridge.jar**:这是PHP/Java ...

    PHP/Java bridge

    PHP/Java bridge , call php in java and call jacva in php. Java as backend and php as a front end.

    tomcat的php/java bridge

    linux下的tomcat运行php库,这个是php/java的转化桥。

    script-api.jar,php-servlet.jar,php-script.jar,JavaBridge.jar, java.inc

    有时,开发者需要在Java平台上运行PHP代码,这就需要用到JavaBridge和Tomcat的支持。本文将详细讲解标题和描述中涉及的知识点,以及如何在Tomcat服务器上配置这些jar包以实现PHP与Java的集成。 首先,我们来看一下...

    javabridge

    【javabridge】是PHP与Java之间的一种交互技术,它允许PHP代码调用Java方法,同时也使得Java应用程序能够与PHP脚本进行通信。这在多语言混合开发的环境中尤其有用,因为它提供了一种途径,使得PHP开发者能够利用Java...

    php调用java类JavaBridge

    JavaBridge,全称为PHP/Java Bridge,是一个开源项目,它提供了一种在PHP和Java之间进行通信的桥梁,使得PHP能够调用Java类、方法和使用Java的库。这种方式通常用于利用PHP的易用性和快速开发特性,结合Java的高性能...

    phpJavaBridge配置包

    这个配置包包含了三个关键的Java档案:JavaBridge.jar、php-script.jar和php-servlet.jar,它们各自扮演着不同的角色,共同构成了PHP与Java交互的基础。 **1. JavaBridge.jar** JavaBridge.jar是PHP/Java Bridge的...

    php_java.jar和php_java.dll

    通常会被PHP的Java扩展(如PHP/Java Bridge)加载,使得PHP能够执行Java方法,处理Java对象,甚至访问Java的远程方法调用(RMI)。 "php_java.dll"则是一个动态链接库文件,它是Windows操作系统下PHP与Java桥接的...

    借《浅谈PHP与Java之Web开发整合技术》说LAJP

    《浅谈PHP与Java之Web开发整合技术》一文深入探讨了PHP与Java两种语言在Web开发中的结合应用,尤其聚焦于三种关键技术:SOAP、Quercus和PHP/JavaBridge,为开发人员提供了宝贵的整合思路。 ### 一、SOAP(Simple ...

    php-java-bridge_7.2.1_documentation.zip

    2. **Java.inc**:这是一个PHP扩展文件,包含PHP端的接口,用于在PHP代码中调用JavaBridge.jar中的类和方法。 三、集成与使用 在项目中使用PHP-Java-Bridge通常涉及以下步骤: 1. **安装JavaBridge.jar和Java.inc...

    php-java-bridge 配置包

    2.把下载的JavaBridge.jar直接用winrar打开,把这个jar包拷到 你的php目录的ext/下。 3.打开war包,里面有个java的文件夹,把他全部拷到你的项目下,如/demo/java 4.目前的版本是VMBridge了,要php调用java类,要先...

    phpJavaBridge

    【JavaBridge.jar】是phpJavaBridge的核心组件,它提供了PHP与Java之间的通信接口。这个JAR(Java Archive)文件包含了所有必要的类和方法,使PHP能够通过HTTP协议与Java服务器端进行通信。它实现了客户端和服务端的...

    JavaBridge.jar php-servlet.jar php-script.jar

    JavaBridge.jar php-servlet.jar php-script.jar 如何在tomcat安装部署php项. PHP/Java Bridge的JavaBridge.jar、php-servlet.jar和php-script.jar复制到tomcat的lib目录下. ...

    基于java的开发源码-PHPJava Bridge.zip

    基于java的开发源码-PHPJava Bridge.zip 基于java的开发源码-PHPJava Bridge.zip 基于java的开发源码-PHPJava Bridge.zip 基于java的开发源码-PHPJava Bridge.zip 基于java的开发源码-PHPJava Bridge.zip 基于java的...

    JavaBridge.jar,php-script.jar,php-servlet.jar,script-api.jar

    JavaBridge.jar, php-script.jar, php-servlet.jar, 和 script-api.jar 这四个文件是针对在Java环境中运行PHP应用程序的关键组件。这些JAR(Java Archive)文件主要用于在Apache Tomcat服务器上实现PHP与Java的集成...

    JavaBridge下载

    2. **Web应用程序服务器扩展**:在Apache Tomcat等服务器中,JavaBridge可以用来创建非Java的Web应用程序服务器扩展,比如用PHP编写,但仍然能充分利用Java的服务器功能。 3. **游戏开发**:游戏引擎可能使用C++...

    php调用Java工具

    通常情况下,这可以通过Java的`JavaBridge`或`PHP/Java Bridge`实现,它们允许PHP脚本直接调用Java类和方法。另外,`JNI (Java Native Interface)`也可以用来创建PHP扩展,但这需要更深入的编程技能。 1. **Java...

    PHP通过javabridge6.2.1调用 Java的说明及源代码(可运行)

    本篇文章将详细讲解如何通过PHP的JavaBridge 6.2.1版本来调用Java代码,并提供一个可运行的实例和源代码。 首先,JavaBridge是PHP与Java之间的一个桥梁,它允许PHP脚本直接调用Java类和方法,从而实现PHP应用与Java...

Global site tag (gtag.js) - Google Analytics