gpt4 book ai didi

java - Lucene 4.1 中抛出 NullPointerException 的简单代码

转载 作者:行者123 更新时间:2023-12-02 07:14:47 27 4
gpt4 key购买 nike

Tokenizer tokenizer 
= new org.apache.lucene.analysis.standard.StandardTokenizer
(Version.LUCENE_41,new StringReader("!!!"));
tokenizer.incrementToken();

抛出

java.lang.NullPointerException
at org.apache.lucene.analysis.standard.std34.StandardTokenizerImpl34.zzRefill(StandardTokenizerImpl34.java:812)
at org.apache.lucene.analysis.standard.std34.StandardTokenizerImpl34.getNextToken(StandardTokenizerImpl34.java:1019)
at org.apache.lucene.analysis.standard.StandardTokenizer.incrementToken(StandardTokenizer.java:180)

这段代码在 Lucene 36 上运行正常,为什么会出现异常

最佳答案

尽管我使用的是 org.apache.lucene.analysis.TokenStream,但我遇到了与您完全相同的问题(即从 3.6 升级到 4.1 后出现 NullPointerException)。在深入研究 Lucene 源代码后,我发现在调用 incrementToken 之前调用 reset 方法可以解决该问题。

您可以在此处查看先前版本的文档:

https://lucene.apache.org/core/old_versioned_docs/versions/3_5_0/api/all/org/apache/lucene/analysis/standard/StandardTokenizer.html#reset(java.io.Reader)

关于java - Lucene 4.1 中抛出 NullPointerException 的简单代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15073382/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com