开始之前,你首先需要了解Solr是什么,以下是百度百科里对Solr的解释:

Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。

文档通过Http利用XML 加到一个搜索集合中。

查询该集合也是通过http收到一个XML/JSON响应来实现。它的主要特性包括:高效、灵活的缓存功能,垂直搜索功能,高亮显示搜索结果,通过索引复制来提高可用性,提供一套强大Data Schema来定义字段,类型和设置文本分析,提供基于Web的管理界面等。

Solr之与Lucene就好比hibernate之与JDBC,所以学好Solr前提是需要有点Lucene基础,但这样不是必要条件,你可以不知道Lucene而直接学习Solr,只是学习坡度会稍微大一些。

把Solr运行起来最简单的办法就是把它部署到Jetty容器里,那么首先我们需要去下载安装Jetty,如果你不知道Jetty是什么,请自己Google了解去,这里就不赘述了。

Jetty 官网: http://www.eclipse.org/jetty

Jetty 官方文档: http://www.eclipse.org/jetty/documentation

Jetty 下载地址:http://download.eclipse.org/jetty/

     而且我已经把Jetty stable-9的zip包上传到我的百度网盘了,你们也可以从我分享的百度网盘地址去下载:

jetty-stable-9.zip

jetty下载下来后,解压到任意盘符,这里我是解压到E盘,截图后如图:

      因为默认解压后的文件夹名称太长,我看的不舒服,所以我更名为jetty-9.2.10,所以你们不要感到诧异。jetty提供了一个start.jar来启动jetty,如图:

     这样start.jar包就跟Java程序关联了,我们就可以直接双击start.jar来启动jetty,但为了方便我们使用Jetty,也可以新建一个bat批处理文件,如图:

       用记事本或者其他文本编辑软件打开startup.bat文件,编辑内容如下:

Txt代码  
  1. echo "begin start the jetty......"
  2. java -jar %cd%/start.jar

然后我们双击bat文件即可启动jetty,为了方便,我们可以为startup.bat创建桌面快捷方式,jetty启动后如图:

      如果需要关闭Jetty,我们只需要关闭dos窗口即可,当然我们还有另一个方式来启动和关闭jetty,命令如下:

Txt代码  
  1. 启动
  2. java -DSTOP.PORT=8009 -DSTOP.KEY=123 -jar start.jar
  3. 关闭
  4. java -DSTOP.PORT=8009 -DSTOP.KEY=123 -jar start.jar --stop

具体操作如图:

 如果需要关闭Jetty,那么需要再另起一个dos窗口,如图操作:

     为了方便操作,我们也可以把上面的命令写入bat文件,一个startup.bat用来启动Jetty,一个shutdown.bat用来关闭Jetty,你懂的。

然后设置下Jetty的环境变量,如图:   

 

接下来,我们需要去Solr官方下载Solr的zip包,如图操作:

 

 

 然后等待几秒,页面会自动跳转至:

 如果页面没有正常跳转,你也可以如图去点击链接手动跳转至下载页面,如图操作:


 然后你会看到这样一个页面:

 挑选一个你想要的版本进行下载,你懂的。什么?你嫌麻烦?我已经把Solr-5.1.0.zip上传到我的百度网盘,为了方便你们,现分享给你们:

Solr-5.1.0.zip

Solr-5.1.0源码

Solr-5.1.0-API文档.chm

这里我以最新版本5.1.0为例,Solr下载下来后,直接解压到任意盘符,这里我是直接解压到E盘,如图:



 解压后,如图:

    上图中contrib部分的“它属于正式源码部分”应该改为“它不属于正式源码部分”,少打了一个【不】字,特此说明!!!!!! 

然后我们需要找到solr的部署包solr.war文件,如图:

 我们需要把solr.war包copy到jetty的webapps目录下,如图:

然后在Jetty根目录下新建文件夹solr-webapp和contexts,

 然后从solr的server\contexts目录下将solr-jetty-context.xml复制到jetty的contexts目录下,如图:

 

接着将solr的server\lib\ext目录下的所有jar包复制到jetty的lib\ext目录下,如图:

 

    接着在jetty根目录下新建一个文件夹solr,如图:

     然后复制solr的server\solr目录下的solr.xml文件至jetty的solr目录下,如图:


 

然后在jetty的solr目录下新建文件夹,如图:



   复制solr的server\solr\configsets\basic_configs\conf目录下的solrconfig.xml至jetty下的solr/collection1/conf目录下,如图:

 

 用文本编辑软件打开jetty的solr\collection1\conf目录下的solrconfig.xml配置进行编辑,将依赖的lucene版本号由5.0.0修改为5.1.0,如图:

 然后双击jetty根目录下的startup.bat启动jetty,如图:


 

 然后打开浏览器输入http://localhost:8080/solr访问Solr的web后台,如果你能看到如图界面,那么恭喜你,solr5部署成功了!!!


         OK,打完收工,这是业界良心啊,有谁有我写的这么详细图文并茂的?写这篇博客花了我3个小时,你们造吗?只为了能为Solr新手学习Solr提供一些帮助。

如果你还有什么问题请加我Q-Q:7-3-6-0-3-1-3-0-5,

或者加裙
一起交流学习!

转载:http://iamyida.iteye.com/blog/2207813

跟益达学Solr5之使用Jetty部署Solr相关推荐

  1. 跟益达学Solr5之使用Tomcat部署Solr

    最近忙着面试以及生活琐事把时间都霸占了,博客拖了4天没更新了,让各位久等了,望多多包涵!不过还好,工作已经敲定了,终于可以安心的学习Solr并分享我学习的点点滴滴啦! 上回我们在Jetty下部署了,不 ...

  2. 跟益达学Solr5之从MySQL数据库导入数据并索引

    最近有小伙伴跟我抱怨说:益达,最近博客更新的有点慢呐.其实不是我变懒了,我是不想因为数量而降低了博客的质量,我需要抱着对你们负责的态度来写每一篇博客,绝不能含糊啊,所以,还望大家多多包涵呐. 今天群里 ...

  3. 跟益达学Solr5之批量索引JSON数据

    假定你有这样一堆JSON数据, Json代码   [ {"id":"1", "name":"Red Lobster",  ...

  4. 跟益达学Solr5之拼音分词

    应群友强烈要求,特此更新此篇博客.其实在我的Lucene5系列博客里我已经介绍了拼音分词,遗憾的是,大家不能举一反三,好吧,还是我亲自上马吧! 首先我们来看看我当初使用Lucene5是如何实现的,   ...

  5. 跟益达学Solr5之使用IK分词器

    在Solr中该如何使用IK分词器呢,这是小伙伴们问的频率比较高的一个问题,今晚特此更新此篇博客.其实之前我在其他博客里已经使用了IK分词器,只是我没做详细说明. 在schema.xml配置中其实有很多 ...

  6. 跟益达学Solr5之使用MMSeg4J分词器

    要想在Sor中使用MMSeg4J分词器,首先你需要自定义一个TokenizerFactory实现类,虽然直接配置Analyzer类也可以,但那样无法配置Analyzer构造函数的参数,不够灵活,存在弊 ...

  7. 跟益达学Solr5之使用Ansj分词器

    摘要:         OK,直接开门见山,不绕弯子啦!基于上篇博客,我们知道了在Solr中配置分词器有两种方式,一种是直接配置分词器类,比如: Xml代码   <fieldType name= ...

  8. 跟益达学Solr5之Facet一瞥

    Facet属于Solr的高级查询部分,之所以在还没有讲解普通Query之前,就开始更新Facet查询,是因为看到很多小伙伴都在为Facet而困扰,其实根本原因还是对Facet不理解.Facet英文单词 ...

  9. 跟益达学Solr5之使用Tika从PDF中提取数据导入索引(转字:http://www.tuicool.com/articles/JfUfaey)

    开始此篇之前,我已经假定你已经学会了如何在Tomcat下部署Solr5啦.即启动Tomcat后你能看到Solr5的Web UI界面.OK,下面直接进入正题. 首先你需要在你的core根目录下新建一个l ...

最新文章

  1. 经典的C++面试题目
  2. 1000:入门测试题目
  3. OpenCV+3计算机视觉++Python语言实现+第二版pdf
  4. php pdo操作mysql_PHP操作数据库详细(PDO)
  5. django模型——数据库(二)
  6. Apache 日志配置,包含过滤配置
  7. 7天快速掌握MySQL-DAY6
  8. 八、JavaScript
  9. Windows 2000/XP IIS5.1安装
  10. 大数据案例--电信日志分析系统
  11. 不带ui的服务器系统,win不含ui的云服务器
  12. Python Java 滑块识别-通杀滑块
  13. 基于平均值为枢轴的快速排序算法
  14. Groovy(Java笨狗)系列--fields and local variables
  15. 行为型模式——备忘录模式(Memento Pattern)
  16. Java核心技术 卷1-总结-18
  17. 【毕业设计】深度学习昆虫识别系统 - 图像识别 opencv python
  18. 微信小程序 | 做一个小程序端的扫雷游戏
  19. python通过requests库发送请求
  20. L1-014 简单题 - java

热门文章

  1. 港科夜闻|香港科大(广州)校长倪明选教授出席江门双碳实验室第一届理事会一次会议...
  2. 内大教务系统教学评估
  3. 你找个程序员当男朋友是一种怎样的体验?
  4. 播动师,流量图,实时看见流量变化动态
  5. ubuntu16.04 titan rtx 24g +显卡驱动+cuda10.1+cudnn环境配置
  6. Ubuntu18.04下Opencv的安装及使用实例
  7. [iOS开发]AFNetworking源码学习
  8. java基础:Linux系统下GiB和GB的换算
  9. Stress命令Linux性能测试,压力测试工具(Centos演示)
  10. linux设置防火墙允许ftp通过,FTP服务器的防火墙通用设置规则