如何在命令行中使用Lucene?

5
我正在尝试按照此链接所示,在Windows命令行上使用lucene。我已经为所有四个提到的.jar文件创建了CLASSPATH变量,但是在运行以下命令之后:java org.apache.lucene.demo.IndexFiles -docs C:/lucene/src,它返回以下错误信息:could not find or load main class org.apache.lucene.demo.IndexFiles。我不知道出了什么问题...有人能帮帮我吗?我是一名学生,也只是初学者。谢谢。

1
请发布您运行的确切命令...我怀疑您在java命令上没有使用-classpath %CLASSPATH%命令行选项。或者,您显然是在Windows上,并且我想知道您是否使用Linux教程来构建类路径。在Windows和Unix上构建路径的语法不同。 - PaulProgrammer
我的命令是 **java -classpath C:\lucene-4.2.1\core;C:\lucene-4.2.1\demo;C:\lucene-4.2.1\analysis\common;C:\lucene-4.2.1\queryparser;**。 - Tahir Shahzad
有趣的是,通常类路径指向JAR文件,但如果您指向的目录包含类文件,则不必如此。这些目录中是否有org\apache\lucene\demo\IndexFiles.class - PaulProgrammer
没有这个目录:'org\apache\lucene\demo\IndexFiles'。 - Tahir Shahzad
1
这就是问题所在。你需要将Lucene jars加入到类路径中。 - PaulProgrammer
我偶然发现了这个。希望你觉得有用。请查看https://github.com/javasoze/clue。 - undefined
2个回答

7

我遇到了类似的问题,您需要在命令中包含CLASSPATH(如果它不在环境变量中)。所以应该是:

java -classpath C:\lucene\lucene-5.1.0\core\lucene-core-5.1.0.jar;C:\lucene\lucene-5.1.0\queryparser\lucene-queryparser-5.1.0.jar;C:\lucene\lucene-5.1.0\analysis\common\lucene-analyzers-common-5.1.0.jar;C:\lucene\lucene-5.1.0\demo\lucene-demo-5.1.0.jar org.apache.lucene.demo.IndexFiles -docs C:\lucene\lucene-5.1.0

若要进行搜索,您可以执行以下操作:

java -classpath C:\lucene\lucene-5.1.0\core\lucene-core-5.1.0.jar;C:\lucene\lucene-5.1.0\queryparser\lucene-queryparser-5.1.0.jar;C:\lucene\lucene-5.1.0\analysis\common\lucene-analyzers-common-5.1.0.jar;C:\lucene\lucene-5.1.0\demo\lucene-demo-5.1.0.jar org.apache.lucene.demo.SearchFiles

0

如果Lucene有一个启动脚本包,那就太好了,可以随意玩耍...我在我的安装根目录中创建了一个indexfiles.cmd文件,其内容如下:

java -classpath core\lucene-core-7.4.0.jar;queryparser\lucene-queryparser-7.4.0.jar;analysis\common\lucene-analyzers-common-7.4.0.jar;demo\lucene-demo-7.4.0.jar org.apache.lucene.demo.IndexFiles %*

还有一个叫做searchfiles.cmd的文件:

java -classpath core\lucene-core-7.4.0.jar;queryparser\lucene-queryparser-7.4.0.jar;analysis\common\lucene-analyzers-common-7.4.0.jar;demo\lucene-demo-7.4.0.jar org.apache.lucene.demo.SearchFiles %*

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接