0

私はPHPが初めてです。Apache 2.2.25 で PHP 5.3 バージョンを使用しています。javaBridge.jar を起動することで、Java ライブラリに正常にアクセスできました。

PHP スクリプトで Java クラス ファイルを使用しているときに問題に直面しています。次のエラーが発生します。

hi Warning: Unknown: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Asia/Kolkata' for '5.5/no DST' instead in Unknown on line 0 Fatal error: Uncaught [[o:Exception]:"java.lang.Exception: CreateInstance failed: new PrintHello. Cause: java.lang.ClassNotFoundException: PrintHello VM: 1.6.0_26@http://java.sun.com/" at: #-17 java.net.URLClassLoader$1.run(Unknown Source) #-16 java.security.AccessController.doPrivileged(Native Method) #-15 java.net.URLClassLoader.findClass(Unknown Source) #-14 java.lang.ClassLoader.loadClass(Unknown Source) #-13 sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) #-12 java.lang.ClassLoader.loadClass(Unknown Source) #-11 java.lang.Class.forName0(Native Method) #-10 java.lang.Class.forName(Unknown Source) #-9 php.java.bridge.Util.classForName(Util.java:1518) #-8 php.java.bridge.JavaBridge.CreateObject(JavaBridge.java:445) #-7 php.java.bridge.Request.handleRequest(Request.java:458) #-6 php.java.bridge.Request.handleRequests(Request.java:500) #-5 php.java.bridge.JavaBridge.handleRequests(JavaBridge.java:150) #-4 php.java.bridge.JavaBridgeRunner.doPut(JavaBridgeRunner.java:207) #-3 php.java.bridge.http.HttpServer.servi in http://localhost:8080/JavaBridge/java/Java.inc on line 195 

Java クラス ファイルを htdocs フォルダーに配置し、php.ini ファイルを次の行で変更しました。

java.java_home = "C:\Program Files\Java\jdk1.6.0_20\bin"
java.java ="C:\Program Files\Java\jdk1.6.0_20\jre"
java.class.path = "c:\PHP\ext\JavaBridge.jar;c:\myclasses"
java.library  = "C:\Program Files\Java\jdk1.6.0_20\jre\bin\server\jvm.dll"
java.library.path = "c:\PHP\ext" 
 extensions = php_java.dll

しかし、私はまだ foll PHP スクリプトを介して Java クラス ファイルにアクセスできません。

<?php 
  require_once("http://127.0.0:8080/JavaBridge/java/Java.inc");
  echo "hi";
$ obj = new java("PrintHello"); 
echo $ obj->printHello("Hi ");
?>
  1. PHP 5.3 スクリプトを使用して Java クラス ファイルを呼び出すことはできますか?
  2. jar ファイルをインポートする必要がありますが、java_require または java_autoload が機能しません。

同じことに関連する提案またはドキュメント。

前もって感謝します。

4

2 に答える 2

0
require_once("http://127.0.0:8080/JavaBridge/java/Java.inc");

実際の localhost ip 127.0.0.1 に置き換えます。

require_once("http://127.0.0.1:8080/JavaBridge/java/Java.inc");

また、変数とドル文字の間に空白を入れないでください$obj

于 2013-07-16T08:24:14.053 に答える
0

私は javabridge を使用したことがありません (聞いたこともありません) が、次のような警告が表示されます。

これは非常に典型的なエラーで、php.ini でタイムゾーンが指定されていないために発生します。php.ini の場所は通常、Linux システムでは /etc/php/php.ini です。それを開いて、次の行を検索します。

date.timezone = 

そこにあなたのタイムゾーンを記入してください(そのような行がない場合はそれを書いてください)、タイムゾーンの可能なリストはここにあります:

http://php.net/manual/en/timezones.php

于 2013-07-16T08:24:28.930 に答える