Heim > Backend-Entwicklung > PHP-Tutorial > 有关php调用lucene(JAVA)代码的有关问题

有关php调用lucene(JAVA)代码的有关问题

WBOY
Freigeben: 2016-06-13 13:50:00
Original
761 Leute haben es durchsucht

有关php调用lucene(JAVA)代码的问题
最近想使用网页显示Lucene搜索的结果,网上说用Php和javabridge可以,但是,我使用javabridge里面的example或者自己写的类都不行。
apache2.2+php5+mysql
现在是可以调用java自己的类如java.lang.String,但是自己写的不行啊。。。而且javabridge里面有一个例子是这样的:

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><?php include_once ("java/Java.inc");

java_autoload("lucene.jar");

use java\lang\System as SYS;
use java\io as IO;
use java\util as Util;
use org\apache\lucene as Lucene;


try {
  echo "indexing ... ";
  /* create the index files in the tmp dir */
  $tmp = create_index_dir();
  $analyzer = new Lucene\analysis\standard\StandardAnalyzer();
  $writer = new Lucene\index\IndexWriter($tmp, $analyzer, true);
  $file = new IO\File(getcwd());
  $files = $file->listFiles();
  assert (!java_is_null($files));

  foreach($files as $f) {
    $doc = new Lucene\document\Document();
    $doc->add(new Lucene\document\Field(
           "name", 
           $f->getName(), 
           Lucene\document\Field::type("Store")->YES, 
           Lucene\document\Field::type("Index")->UN_TOKENIZED));
    $writer->addDocument($doc);
  }
................
................
................
Nach dem Login kopieren

但是输出是这个
Warning: Unexpected character in input: '\' (ASCII=92) state=0 in C:\AppServ\www\test.php on line 5

Parse error: syntax error, unexpected T_STRING, expecting T_AS or T_PAAMAYIM_NEKUDOTAYIM or ';' in C:\AppServ\www\test.php on line 5
貌似php没有use这个用法啊。。。?
如果用java_require("lucene.jar");又说java_require什么不支持了。。。
大家路过帮帮忙吧。。。谢谢了

------解决方案--------------------
您的 php 版本太低了,尚不支持命名空间

------解决方案--------------------
环境有配置好吗。。。
编写一个简单的php测试一下。。。
$str = new java("java.lang.String", "hello");
echo $str;
------解决方案--------------------
这个问题好像我也遇到过,不过到现在也没解决
------解决方案--------------------
楼上是不是灌水啊,还弄个好像遇到过?我是真的遇到过,到现在还没解决的呢!
------解决方案--------------------
自己写个helloworld打包成jar 放到JavaBridge/WEB-INF/lib/下面 重启下jdk

然后在php里面 $helloworld=new Java("helloworld"); 试试看

我这没问题的
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage