Heim >Backend-Entwicklung >PHP-Tutorial >php通过JavaBridge调用Java类库和不带包的自定义java类成功 但是调用带包的自定义Java类报错,该怎么解决,求大神指点,多谢

php通过JavaBridge调用Java类库和不带包的自定义java类成功 但是调用带包的自定义Java类报错,该怎么解决,求大神指点,多谢

WBOY
WBOYOriginal
2016-06-13 12:15:471287Durchsuche

php通过JavaBridge调用Java类库和不带包的自定义java类成功 但是调用带包的自定义Java类报错,该如何解决,求大神指点,谢谢。
php通过JavaBridge调用Java类库和不带包的自定义java类成功 但是调用带包的自定义Java类报错;错误日志如下:Fatal error: Uncaught [[o:Exception]:"java.lang.Exception: CreateInstance failed: new cn.org.bjca.test.Test1. Cause: java.lang.ClassNotFoundException: Could not find cn.org.bjca.test.Test1 in java_require() path. Please check the path and the SEL and File permissions. VM: [email protected]://java.sun.com/" at: #-9 php.java.bridge.DynamicJavaBridgeClassLoader.loadClass(DynamicJavaBridgeClassLoader.java:278) #-8 java.lang.Class.forName0(Native Method) #-7 java.lang.Class.forName(Class.java:247) #-6 php.java.bridge.SimpleJavaBridgeClassLoader.forName(SimpleJavaBridgeClassLoader.java:158) #-5 php.java.bridge.JavaBridge.CreateObject(JavaBridge.java:455) #-4 php.java.bridge.Request.handleRequest(Request.java:443) #-3 php.java.bridge.Request.handleRequests(Request.java:481) #-2 php.java.bridge.http.ContextRunner.run(ContextRunner.java:145) #-1 php.java.bridge.ThreadPool$Delegate.run(ThreadPool.java:60) #0 C:\Apache\htdocs\java\Java.inc(335): java_ThrowExceptionProxyFactory->getProxy(1, NULL, 'Could not find ...', false) #1 C:\Apache in C:\Apache\htdocs\java\Java.inc on line 298
尝试了网上提供的很多办法,都未能解决,并且在windows和linux均出现这个问题,不知道哪个地方配置错误,请大家给出建议,谢谢。
php版本:5.3.5
apache版本:2.2.2
JavaBridge版本:5.4.4
------解决思路----------------------
最近用了php-java-bridge-6.2.1,碰到了同样的问题,解决办法如下,给楼主做参考吧。

把你所要用的jar,放到你的java/jre/lib/ext下,缺点是需要重启server,这个问题就ok了。

有没有大侠知道怎样可以不重启server(应该是JVM加载),就可以调用Java成功?
------解决思路----------------------
这个问题主要是路劲的问题,我跟你用的是同一个版本的 JavaBridge,
$here=realpath(dirname($_SERVER["SCRIPT_FILENAME"]));
java_set_library_path($here.PATH_SEPARATOR .'.'); //设置java开发包(class或jar文件)路径,多个路径就用PATH_SEPARATOR分隔,保证跨平的支持。

可以看看这个地方的介绍 http://blog.csdn.net/qq635785620/article/details/7522966

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn