Solr查询版本问题:版本无效或数据不是'javabin'格式

时间:2015-06-28 20:17:36

标签: java solr version

作为最近项目的一部分,我们的Solr搜索引擎已升级到5.0.0。运行客户端的程序在生产/ qa中工作正常,但是当我在本地系统上运行它时,我收到此错误消息:

Caused by: java.lang.RuntimeException: Invalid version or the data in not in 'javabin' format
    at org.apache.solr.common.util.JavaBinCodec.unmarshal(JavaBinCodec.java:99)

此异常来自apache-solr-solrj-1.4.1.jar,我认为需要更换。但是当我检查(运行)生产代码时,存在相同的jar文件。

但是,生产服务器上的java版本已升级到java版本“1.7.0_79”。在我的本地系统上,我指的是来自STS / Eclipse的1.6 jre。如果我改为1.7,我开始在程序的不同部分得到那些51和50类版本错误,表明转换为1.7存在问题,尽管在生产服务器上它似乎不是问题。

我已经通过Web客户端测试了solr服务器是否正常运行。它以Json格式返回数据。

我有一个问题是,当它说“无效版本或数据不是javabin格式”时它意味着什么?我想这意味着,它可能是javabin格式,但不是预期的版本,或者它采用不同的格式,如XML或Json。但是,我不清楚这两个问题中的哪一个是问题所在。

有什么建议吗?

2 个答案:

答案 0 :(得分:0)

全套。我确实更新了Java 1.7,指向一个JRE - 加上来自包含的库的一些代码已经更新,我还没有进入。

答案 1 :(得分:0)

它是版本支持的问题。通过solr-solrj4.9.0.jar替换以前的jar,我在solr 4.6.1中解决了同样的错误。如果您仍然面临同样的错误,则需要升级您的Java版本。请记住,有一件事需要相同版本的solr-core.jar才能成功执行。