如果您有一个网络应用程序,请使用Solr - 我尝试过将两者集成,Solr更容易。否则,如果您不需要Solr的功能(最重要的是分面搜索),那么请使用Lucene。
如果您想完全将搜索功能嵌入应用程序中,而不想维护像Solr这样的单独进程,则使用Lucene可能更可取。例如,桌面应用程序可能需要一些搜索功能(例如Eclipse IDE使用Lucene搜索其文档)。您可能不希望此类应用程序启动像Solr这样的重型进程。
我很惊讶没有人提到NRT - 近实时搜索,它可以在Lucene中使用,但目前还不能在Solr中使用。