设为首页 收藏本站
查看: 801|回复: 0

[经验分享] 质疑:网络中关于php拓展java配置的解答。并请教

[复制链接]

尚未签到

发表于 2017-4-10 10:01:59 | 显示全部楼层 |阅读模式
  关于php中拓展java的问题的解答,我在网上找了些文章,但是大概都如村里的这个帖子相似http://www.phpx.com/happy/thr78795.html 

说明:我的php+apache2+mysql和jdk安装目录如下:
c:\HttpServ\php4
c:\HttpServ\php5
c:\HttpServ\apache2
c:\HttpServ\mysql
c:\j2sdk1.4

在php.ini中加入了如下代码:
[java] 
extension=php_java.dll 
java.library.path=c:\HttpServ\php4\extensions\ 
java.class.path="c:\HttpServ\php4\extensions\j2sdk1.4\php_java.jar;c:\myclasses"

运行的调试代码如下:
[php]
<?php 

$system = new Java("java.lang.System"); 
print "Java version=".$system->getProperty("java.version")." <br>\n"; 
print "Java vendor=".$system->getProperty("java.vendor")." <p>\n\n"; 
print "OS=".$system->getProperty("os.name")." ". 
$system->getProperty("os.version")." on ". 
$system->getProperty("os.arch")." <br>\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"; 

?> 
[/php]
但是运行后出错:
Fatal error: Cannot instantiate non-existent class: java in D:\WWWROOT\java.php on line 3
(注:我的document_root=D:\WWWROOT)

我对上面的代码又作了一下修改
将 java.class.path="c:\HttpServ\php4\extensions\j2sdk1.4\php_java.jar;c:\myclasses"
改为:java.class.path="c:\HttpServ\php4\extensions\php_java.jar;c:\myclasses"
也就是这个语句我不懂,不知道是干什么的,我再想,我的c:\HttpServ\php4\extensions\下面没有j2sdk1.4这个目录,而直接有php_java.jar,所以也就改了(见笑了);
但是改了之后还是不行,还是那个错误。

我在网上又找了个类似的配置如下:
文章地址:http://www.channel7.cn/2004/12-30/174713.html 
其中原来php.ini代码如下:
[java] 
extension=php_java.dll 
java.home = C:\jdk1.2.2 
java.library = c:\jdk1.2.2\jre\bin\CLASSIC\jvm.dll 
java.library.path=c:\web\php4\extensions\ 
java.class.path="c:\web\php4\extensions\jdk1.2.2\php_java.jar;c:\myclasses"

我改后代码如下:
[java] 
extension=php_java.dll 
java.home = C:\j2sdk1.4 
java.library = c:\j2sdk1.4\jre\bin\server\jvm.dll 
java.library.path=c:\HttpServ\php4\extensions\ 
java.class.path="c:\HttpServ\php4\extensions\php_java.jar;c:\MyClasses"
其中
java.library = c:\jdk1.2.2\jre\bin\CLASSIC\jvm.dll 
我发觉我的c:\j2sdk1.4\jre\bin\目录下更本没有CLASSIC文件夹(也许是版本的问题吧),只有server和client,这两个文件夹类各有各jvm.dll,我两次都尝试了,但是还是不行,还是那个错误。
  
[java] 
2extension=php_java.dll 
3java.home = C:\j2sdk1.4 
4java.library = c:\j2sdk1.4\jre\bin\server\jvm.dll 
5java.library.path="c:\HttpServ\php4\extensions\;c:\j2sdk1.4\jre\lib" 
6  java.class.path="c:\HttpServ\php4\extensions\php_java.jar;c:\myclasses;c:\j2sdk1.4\lib\dt.jar;c:\j2sdk1.4\lib\tools.jar;c:\j2sdk1.4\bin;" 
  Fatal error: Cannot instantiate non-existent class: java in D:\WWWROOT\java.php on line 3 
  先别忙加自己的类库, 纯粹用标准库试完再说, 你的 C: 下面有 myclasses 这个目录吗? 
java.library.path= c:\HttpServ\php4\extensions\ 最后不要加斜杠, 应该是 java.library.path= c:\HttpServ\php4\extensions

[java]
extension=php_java.dll
java.home = C:\j2sdk1.4\jre
java.library = c:\j2sdk1.4\jre\bin\server\jvm.dll
java.library.path= c:\HttpServ\php4\extensions
java.class.path= c:\HttpServ\php4\extensions\php_java.jar 

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-362757-1-1.html 上篇帖子: PHP jquery富文本在线编辑器UEditor 下篇帖子: PHP调用三种数据库的方法(1)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表