摘要:將之更改為如下形式解釋一下,這里的根目錄是你自身的目錄。分析文件,發(fā)現(xiàn)一段配置但是,自己太菜,分析不出原因。
前言
1、私信請(qǐng)?jiān)赟egmentFault 傳送點(diǎn) https://segmentfault.com/a/1190000010959342,有問(wèn)必答
2、轉(zhuǎn)發(fā)請(qǐng)注明出處 http://3dot141.cn/blogs/29869.html,也給小可愛(ài)一點(diǎn)出名的機(jī)會(huì)嘛
tomcat 9
JDK 1.8
solr 6.6
官網(wǎng)下載 solr 6.6 然后解壓到文件夾。
將 server/server-webapp 下的 webapp 復(fù)制到 tomcat 的 webapp 包下
并改名為 solr?
?打開(kāi) 在?tomcat 下的 solr?項(xiàng)目, solr ( webapp 改名后的solr )/WEB-INF/web.xml 文件,在開(kāi)頭找到類似代碼,取消注釋并修改,如下
solr/home D:/Programme/0-Java/J_workspace/solr_home java.lang.String
注:此處是我的 solrhome 的文件位置 , 你可以自行設(shè)置
將 server/lib 下的 metrics-.jar 包 與 dist 下的 solr-dataimporthandler- .jar 包 復(fù)制到你在tomcat / webapp 下的 solr /WEB-INF/ lib 目錄中。
將 server/resources 目錄下的 log4j.properties 文件 拷貝到 tomcat/webapp/solr/WEB-INF/classes 目錄下,沒(méi)有,就自己新建一個(gè)。
自己根據(jù)上文 web.xml 中配置的 solr/home 信息,建立 solr_home 文件夾 。并將 server / solr ?下的文件全部 拷貝到 solr_home 文件夾下。
在 solr_home 目錄下建立一個(gè) 文件夾,new_core 作為 你 的solr_core。并將 上圖中 configsets / sample_techproducts_configs 目錄下的 conf 文件夾 拷貝到 new_core 文件夾下。
配置 lib 標(biāo)簽。
將 solr 6.6 壓縮包內(nèi)的 contrib 與 dist 文件夾 復(fù)制到 solr_home 文件夾下。
打開(kāi) new_core/conf/solrconfig.xml?文件,從中找到如下代碼形式。
解釋一下,這里的根目錄是 你自身的 solr_core 目錄。對(duì)我來(lái)說(shuō) ,就是 new_core 所在的目錄。
所以?
../ == solr_home 目錄
成果展示
打開(kāi)http://localhost:8080/solr/index.html 會(huì)出現(xiàn)如下畫(huà)面
根據(jù)這位博主的文章http://www.jianshu.com/p/dd7a...
總結(jié)如下:
1.啟動(dòng)tomcat時(shí)如果報(bào)下面的錯(cuò)誤:
嚴(yán)重: Exception starting filter SolrRequestFilter java.lang.NoClassDefFoundError: com/codahale/metrics/MetricSetat java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671) at java.lang.Class.getConstructor0(Class.java:3075)at java.lang.Class.newInstance(Class.java:412) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:119) at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258) at org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:105) at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4700) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5340) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:753) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:729) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1092) at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1834) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)Caused by: java.lang.ClassNotFoundException:com.codahale.metrics.MetricSet at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1333) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1167) ... 20 more
請(qǐng)把solr-6.4.1/server/lib下的metrics-core-3.1.2.jar,metrics-ganglia-3.1.2.jar,metrics-graphite-3.1.2.jar,metrics-jetty9-3.1.2.jar,metrics-jvm-3.1.2.jar這幾個(gè)jar包放到tomcat下的solr項(xiàng)目的WEB-INF/lib目錄下。
2.訪問(wèn)http://localhost:8080/solr/index.html時(shí)如果報(bào)下面的錯(cuò)誤:
HTTP Status 403 - Access to the requested resource has been denied
把tomcat下的solr項(xiàng)目的web.xml文件中
Disable TRACE / TRACE Enable everything but TRACE / TRACE
這段注釋掉。這段配置限制了對(duì)solr資源的訪問(wèn),注釋掉就可以訪問(wèn)了。
3.java.lang.NoSuchMethodError:
解決:solr5.5以上版本在tomcat8下運(yùn)行
由于solr5.5.0和solr5.5.1 版本部署在tomcat7下的時(shí)候,會(huì)報(bào)Java.lang.NoSuchMethodError: javax.servlet.ServletInputStream.isFinished()Z的錯(cuò)誤,這個(gè)是serverlet3.1才有的方法。
4.javax.servlet.ServletInputStream.isFinished
解決:solr5版本以上的部署最好使用JDK1.8
solr5版本以上的部署最好使用JDK1.8,雖然官網(wǎng)沒(méi)有明確表示solr5必須是要使用JDK1.8,但是其中一部分功能鎖需求的JDK版本在JDK1.7以下是沒(méi)有的
比如:Java.lang.NoSuchMethodError: javax.servlet.ServletInputStream.isFinished()Z
我是在全量索引的時(shí)候發(fā)生的此異常提示:找不到ServletInputStream類下面的isFinished()方法,那么現(xiàn)在我們找到該類ServletInputStream
如果在這個(gè)類下面沒(méi)有isFinished()方法,那就是JAR包問(wèn)題,這個(gè)類所在的jar包是servlet-api.jar
5.待解決:
web.xml 文件中?的
正常部署后,直接訪問(wèn) localhost:8080/solr 應(yīng)該就可以使用,但是,會(huì)出現(xiàn)不能加載 UI 的說(shuō)明。
只有訪問(wèn) localhost:8080/solr/index.html 才可以正常加載。
分析web.xml 文件,發(fā)現(xiàn)一段 servlet 配置
LoadAdminUI org.apache.solr.servlet.LoadAdminUiServlet LoadAdminUI /index.html
但是,自己太菜,分析不出原因。所以還需要,之后的學(xué)習(xí)中多注意。
四、與中文分詞器的適配 1.smart-cn從 solr-6.6.0/contrib/analysis-extras/lucene-libs 下拷貝 lucene-analyzers-smartcn-6.6.0 到 apache-tomcat-9.0.0.M20/webapps/solr/WEB-INF/lib 目錄下。
打開(kāi) solrhomenew_coreconf 下的managed-scheme 文檔
加入以下內(nèi)容
或者可以使用TokenizerFactory
2.IKAnalyzer
這里有最新適配 solr6.6 的 IKAnalyzer,這里是 適配攻略
進(jìn)入可下載. 下載地址
下載后,將IKAnalyzer.jar 包 拷貝到 apache-tomcat-9.0.0.M20/webapps/solr/WEB-INF/lib 目錄下
打開(kāi) solrhomenew_coreconf 下的managed-scheme 文檔
加入以下內(nèi)容
或者可以使用TokenizerFactory
成果展示
結(jié)語(yǔ)以上就是對(duì) solr 進(jìn)行的一些簡(jiǎn)單操作,下一篇文章將會(huì)介紹如何將 solr 與 java 、 mysql 數(shù)據(jù)庫(kù)結(jié)合起來(lái),使用。
喜歡的話可以點(diǎn)一下收藏,與關(guān)注哦~,碼字不易。
謝謝~~~
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/67488.html
摘要:傳送門(mén)搜索為將入門(mén)現(xiàn)在介紹如何與數(shù)據(jù)庫(kù)整合。指定域的名稱指定域的類型指定使用的分詞器。結(jié)語(yǔ)因?yàn)闀r(shí)間有限,先介紹到這里。等下次有時(shí)間,將與的整合,以及一起進(jìn)行總結(jié)。我的個(gè)人博客謝謝。 前言 上一篇已經(jīng)介紹了 solr 的基本操作。傳送門(mén): 搜索為將 -- solr 入門(mén)現(xiàn)在介紹如何 與數(shù)據(jù)庫(kù) 整合。 solr managed-scheme 文檔 這個(gè)文檔位于 solrhomenew_co...
摘要:系列文章系列一快速入門(mén)系列二使用及索引文檔的基本操作系列三查詢及高亮是什么在維基百科的定義是一套用于全文檢索和搜索的開(kāi)放源代碼程序庫(kù),由軟件基金會(huì)支持和提供。全面準(zhǔn)確和快速是衡量全文檢索系統(tǒng)的關(guān)鍵指標(biāo)。結(jié)果列表有相關(guān)度排序。 系列文章: Lucene系列(一)快速入門(mén) Lucene系列(二)luke使用及索引文檔的基本操作 Lucene系列(三)查詢及高亮 Lucene是什么? Luc...
摘要:代碼如下值默認(rèn)為而在新版中,方法被廢除根據(jù)的官方文檔中的說(shuō)法中文翻譯后索引時(shí)權(quán)值被廢除,請(qǐng)將索引時(shí)打分因素添加入域中,然后在查詢時(shí),使用功能性打分查詢語(yǔ)句,進(jìn)行關(guān)聯(lián)查詢。 前言 學(xué)習(xí)的資料是 lucene 4.10 版本,比較沉舊,查閱最新的 lucene 版本 6.6 的官方文檔,整理出以下幾個(gè)使用中的不同。 從淺入深依次為 (注:不是根據(jù)版本先后) IndexWrit...
摘要:系列文章系列一快速入門(mén)系列二使用及索引文檔的基本操作系列三查詢及高亮入門(mén)簡(jiǎn)介地址下載地址是一個(gè)用于搜索引擎的,方便開(kāi)發(fā)和診斷的可視化工具。使用作為其最低級(jí)別的搜索引擎基礎(chǔ)。截止,上述代碼所用的包皆為最新。 系列文章: Lucene系列(一)快速入門(mén) Lucene系列(二)luke使用及索引文檔的基本操作 Lucene系列(三)查詢及高亮 luke入門(mén) 簡(jiǎn)介: github地址:http...
閱讀 2684·2021-11-23 09:51
閱讀 2427·2021-09-30 09:48
閱讀 2060·2021-09-22 15:24
閱讀 1024·2021-09-06 15:02
閱讀 3333·2021-08-17 10:14
閱讀 1956·2021-07-30 18:50
閱讀 1992·2019-08-30 15:53
閱讀 3192·2019-08-29 18:43