您好,欢迎访问一九零五行业门户网

php 调用 java类 常见配置错误

错误
不搞php开发的工作很长时间了,最近修改一个原来做的项目要支持调用java类,开始重操php,先解决配置问题再说。不说太多费话。网上的
文章不少,但是都有很多错误的东西在里面,下面我介绍一下我配置全过程与大家分享,如有问题可以虽时联系愿意为你解决。
说明:此文章的正常性只对本文中所提供版本的php和jdk有保证,其它版本的未一一试,如有问题及时联系愿与你一起解决相关问题。
安装配置php的工作这里就略过(有不会的朋友可以与我联系inber_net@hotmail.com)
测试环境:windows2003+iis+php version 4.3.6+jdk 1.4.1_01
下面我先将网上的错误的配置列表罗列如下
错误配置1
java.home = d:\j2sdk14101\
错误结果如下:
can't open d:\j2sdk14101\\lib\tzmappings.
解决办法:
java.home = d:\j2sdk14101\jre
错误配置2
java.class.path =c:\php\extensions\php_java.jar;x:\java class文件存目录\
错误结果如下:
fatal error: call to a member function on a non-object in e:\inberkong\public_html\phproot\testjava.php on line
错误原因:用户java class文件没有存放在 x:\java class文件存目录\ 中或者x:\java class文件存目录\不存在
解决办法:1 确定java.class.path =c:\php\extensions\php_java.jar;x:\java class文件存目录\ 正确
          2 确定此目录下有在php调用的class文件并确定是正确的
正确的配置如下:
第一步:确定环境正确
默认以上环境配置正确
php目录:c:\php
jdk目录:d:\j2sdk14101
第二步
找到c:\windows下的php.ini
1 找到extension_dir并配置 确保其目录上有php_java.jar php_java.dll
  extension_dir = d:\php\extensions
2 找到;extension=php_java.dll将此配置信息前的分号去掉
  extension=php_java.dll
3 文件找到[java]之后的东西配置相关内容
[java]
java.class.path =c:\php\extensions\php_java.jar;c:\php\php_for_class\
java.home = d:\j2sdk14101\jre
java.library = d:\j2sdk14101\jre\bin\server\jvm.dll
java.library.path = c:\php\extensions\
第三步
写一个java文件并编译后放在c:\php\php_for_class\
test.java文件如下:
package test;
public class test
{
 public string getmessage(string dd)
 {
 return hello php ! i am  from java.+dd;
 }  
}
 写一个php文件testjava.php 调用test包中的test类
getproperty(java.version).
\n;
print java vendor=.$system->getproperty(java.vendor).
\n\n;
print os=.$system->getproperty(os.name). .
$system->getproperty(os.version). on .
$system->getproperty(os.arch).
\n;
$formatter = new java(java.text.simpledateformat,eeee,mmmm dd, yyyy 'at' h:mm:ss a zzzz);
print $formatter->format(new java(java.util.date)).
\n;
$b=new java(test.test);
$x=$b->getmessage(
hello java! i am from php!);
echo $x;
?>
显示结果:
java version=1.4.1_01
java vendor=sun microsystems inc.
os=windows xp 5.2 on x86
星期四,一月 12, 2006 at 3:00:51 下午 中国标准时间
hello php ! i am from java.
hello java! i am from php!
其它类似信息

推荐信息