jcseg分词器--词库自动更新加载问题
@狮子的魂 你好,想跟你请教个问题:
我在使用 1.9.2的时候测试这个词库自动更新加载没有效果诶。
我确保自定义jcseg.properties被加载了。指定的词库目录也文件也已经生效。
并且已经开启 lexicon.autoload=1 lexicon.polltime=60这两个选项。
我等了1分钟没效果,等了5、6分钟也没效果,一定要重新启动才行。Win7系统 控制台测试。
请问这是个啥情况?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(11)
回复
不好意思。。。真不知是我操作问题还是怎么,我在solr里加入也没效果。。。狂汗。。。4.6.1版。确保分词是正常,自定义properties已加载。自定义的路径都不包含空格。
回复
我用了自定义前后缀,词库文件编码都为utf-8,每次都加了多个词,改了词库后有按要求把词库文件名添加到lex-autoload.todo 文件。
回复
好吧,我再测试一下,兴许是个bug呢。毕竟我很少在WiNT下活动。。
回复
这个是个bug吧?我已经在托管的项目issue里面反映了
回复
已经fix。。
引用来自“狮子的魂”的评论
加入调试代码后,有重新编译一下吗?
守护进程在solr和lucene中是会工作正常的。。
加入调试代码后,有重新编译一下吗?
守护进程在solr和lucene中是会工作正常的。。
但是奇怪的是,我在eclipse里直接运行,确实没问题的。如图
如图,没有进入autoloadThread的run。
你好,我打印了信息,的确是因为这个守护线程没有启动。我在下面截图
恩,我不知道你是怎么测试的,请做如下的确认工作。
1. jcseg.properties做你说的设置。
2. 在对应的lex-xxx.lex词库中加入新词条并且保存
3. 在lex-autoload.todo一行一个加入更新了的词库文件。
4. 测试的时候请多加入几个词条,新加入的词条没有体现效果,并不代码词条没有被载入,加入了新词条并不意味了jcseg会一定这么切分。
//----------------------------------------------------------------
如果确保做到了上面的步骤,还是没有效果,请做如下的调试:
更改org.lionsoul.jcseg.core.ADictionary#startAutoload方法(86行),加入测试输出代码,查看jcseg是否启动了词库加载守护进程。。
Best