公爵 - org.apache.lucene.analysis.standard.StandardAnalyzer
Duke - org.apache.lucene.analysis.standard.StandardAnalyzer
https://github.com/larsga/Duke - 我正在使用 Duke - 进行重复数据删除。
我已经设置了 Duke(jar 文件 - Duke jar 以及 lucene jar 都添加到类路径中)..
示例 github- https://github.com/larsga/Duke/wiki/SemanticDogfood
When I tried running this :
soundaryat@IMCHLT132:~/Duke$ java no.priv.garshol.duke.Duke --testfile=doc/example-data/dogfood-test.txt --testdebug --showmatches doc/example-data/dogfood.xml
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.lucene.analysis.standard.StandardAnalyzer.<init>(Lorg/apache/lucene/util/Version;)V
at no.priv.garshol.duke.databases.LuceneDatabase.<init>(LuceneDatabase.java:77)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at java.lang.Class.newInstance(Class.java:442)
at no.priv.garshol.duke.ConfigLoader.instantiate(ConfigLoader.java:292)
at no.priv.garshol.duke.ConfigLoader.access0(ConfigLoader.java:31)
at no.priv.garshol.duke.ConfigLoader$ConfigHandler.startElement(ConfigLoader.java:199)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:509)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:380)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2787)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:118)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1140)
at no.priv.garshol.duke.ConfigLoader.load(ConfigLoader.java:49)
at no.priv.garshol.duke.Duke.main_(Duke.java:64)
at no.priv.garshol.duke.Duke.main(Duke.java:35)
然而,同一个 github 中的另一个示例有效 - https://github.com/larsga/Duke/wiki/LinkingCountries
谁能帮忙,..提前致谢..
我遇到了同样的问题,通过谷歌搜索我发现 Duke 与最新版本的 Lucene 不兼容。你在使用 Lucene 5.X 吗?
如果是这种情况,您应该下载旧版本的 Lucene jars (4.0.0) 并将它们包含在类路径中。它对我有用!
github 存储库中的特定示例存在问题。
https://github.com/larsga/Duke/wiki/SemanticDogfood 配置文件中缺少一个文件。 (我从配置文件中发现).. 特定示例缺少一些依赖文件。于是得到了解决。 :)
也感谢您的回复 Enri。
将这些 jar 文件包含在 class 路径中:
lucene-core-4.0.0.jar
lucene-analyzers-common-4.2.0.jar
lucene-6.3.0.jar
duke-1.2.jar:
.
$CLASSPATH
https://github.com/larsga/Duke - 我正在使用 Duke - 进行重复数据删除。
我已经设置了 Duke(jar 文件 - Duke jar 以及 lucene jar 都添加到类路径中)..
示例 github- https://github.com/larsga/Duke/wiki/SemanticDogfood
When I tried running this :
soundaryat@IMCHLT132:~/Duke$ java no.priv.garshol.duke.Duke --testfile=doc/example-data/dogfood-test.txt --testdebug --showmatches doc/example-data/dogfood.xml
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.lucene.analysis.standard.StandardAnalyzer.<init>(Lorg/apache/lucene/util/Version;)V
at no.priv.garshol.duke.databases.LuceneDatabase.<init>(LuceneDatabase.java:77)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at java.lang.Class.newInstance(Class.java:442)
at no.priv.garshol.duke.ConfigLoader.instantiate(ConfigLoader.java:292)
at no.priv.garshol.duke.ConfigLoader.access0(ConfigLoader.java:31)
at no.priv.garshol.duke.ConfigLoader$ConfigHandler.startElement(ConfigLoader.java:199)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:509)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:380)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2787)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:118)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1140)
at no.priv.garshol.duke.ConfigLoader.load(ConfigLoader.java:49)
at no.priv.garshol.duke.Duke.main_(Duke.java:64)
at no.priv.garshol.duke.Duke.main(Duke.java:35)
然而,同一个 github 中的另一个示例有效 - https://github.com/larsga/Duke/wiki/LinkingCountries
谁能帮忙,..提前致谢..
我遇到了同样的问题,通过谷歌搜索我发现 Duke 与最新版本的 Lucene 不兼容。你在使用 Lucene 5.X 吗? 如果是这种情况,您应该下载旧版本的 Lucene jars (4.0.0) 并将它们包含在类路径中。它对我有用!
github 存储库中的特定示例存在问题。
https://github.com/larsga/Duke/wiki/SemanticDogfood 配置文件中缺少一个文件。 (我从配置文件中发现).. 特定示例缺少一些依赖文件。于是得到了解决。 :)
也感谢您的回复 Enri。
将这些 jar 文件包含在 class 路径中:
lucene-core-4.0.0.jar
lucene-analyzers-common-4.2.0.jar
lucene-6.3.0.jar
duke-1.2.jar:
.
$CLASSPATH