`
duoduo1987
  • 浏览: 5694 次
  • 来自: 杭州
社区版块
存档分类
最新评论

windows环境下运行solr example

 
阅读更多

第一步:windows环境下面配置JavaEE编译和运行环境 略过。

第二步:下载Tomcat和Solr包  略过。

第三步:解压缩tomcat和solr到对应目录(根据个人喜好而定)

             我的tomcat目录:D:\work_imp\tomcat\

             solr目录: D:\work_imp\solr

第四步:将“\solr解压缩目录\dist\solr-4.2.0.war”复制到“\tomcat解压缩目录\webapps\”目录下,并修改名称为solr.war(便于配置,不修改也没问题)

              在\\tomcat解压缩目录\下面新建一个文件夹并命名为"solrapp",将“\solr解压缩目录\example\solr\”复制到新创建的目录下

               在“...\\Tomcat\\conf\\Catalina\\localhost”目录下建立“solr.xml” 配置文件,写入如下内容:

<?xml version="1.0" encoding="UTF-8" ?>  
<Context docBase="D:/work_imp/tomcat/webapps/solr" debug="0" crossContext="true" >    
   <Environment name="solr/home"   type="java.lang.String"   value="D:/work_imp/tomcat/solrapp/solr"   override="true" />  
</Context> 

 

docBase="XXX"和value="xxx"分别对应solr的war包目录和需要运行的solr目录,视个人情况做修改。

 

运行的过程中会报如下错误:

主要的错误:

solr - org.apache.solr.common.SolrException: Could not load config for solrconfig.xml

详细信息如下:

2013-4-5 17:36:15 org.apache.catalina.core.AprLifecycleListener init

信息: Loaded APR based Apache Tomcat Native library 1.1.19.

2013-4-5 17:36:15 org.apache.catalina.core.AprLifecycleListener init

信息: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].

2013-4-5 17:36:16 org.apache.coyote.http11.Http11AprProtocol init

信息: Initializing Coyote HTTP/1.1 on http-8080

2013-4-5 17:36:16 org.apache.coyote.ajp.AjpAprProtocol init

信息: Initializing Coyote AJP/1.3 on ajp-8009

2013-4-5 17:36:16 org.apache.catalina.startup.Catalina load

信息: Initialization processed in 422 ms

2013-4-5 17:36:16 org.apache.catalina.core.StandardService start

信息: Starting service Catalina

2013-4-5 17:36:16 org.apache.catalina.core.StandardEngine start

 

 

2013-4-5 17:36:17 org.apache.solr.core.SolrResourceLoader <init>

信息: new SolrResourceLoader for directory: 'D:\work_imp\tomcat\solrapp\solr\collection1\'

2013-4-5 17:36:17 org.apache.solr.core.CoreContainer recordAndThrow

严重: Unable to create core: collection1

org.apache.solr.common.SolrException: Could not load config for solrconfig.xml

        at org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:991)

        at org.apache.solr.core.CoreContainer.create(CoreContainer.java:1051)

        at org.apache.solr.core.CoreContainer$3.call(CoreContainer.java:634)

        at org.apache.solr.core.CoreContainer$3.call(CoreContainer.java:629)

        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)

        at java.util.concurrent.FutureTask.run(FutureTask.java:138)

        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)

        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)

        at java.util.concurrent.FutureTask.run(FutureTask.java:138)

        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)

        at java.lang.Thread.run(Thread.java:662)

Caused by: java.io.IOException: Can't find resource 'solrconfig.xml' in classpath or 'D:\work_imp\to

mcat\solrapp\solr\collection1\conf/', cwd=D:\work_imp\tomcat\bin

        at org.apache.solr.core.SolrResourceLoader.openResource(SolrResourceLoader.java:318)

        at org.apache.solr.core.SolrResourceLoader.openConfig(SolrResourceLoader.java:283)

        at org.apache.solr.core.Config.<init>(Config.java:103)

        at org.apache.solr.core.Config.<init>(Config.java:73)

        at org.apache.solr.core.SolrConfig.<init>(SolrConfig.java:117)

        at org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:989)

        ... 11 more

2013-4-5 17:36:17 org.apache.solr.common.SolrException log

严重: null:org.apache.solr.common.SolrException: Unable to create core: collection1

        at org.apache.solr.core.CoreContainer.recordAndThrow(CoreContainer.java:1672)

        at org.apache.solr.core.CoreContainer.create(CoreContainer.java:1057)

        at org.apache.solr.core.CoreContainer$3.call(CoreContainer.java:634)

        at org.apache.solr.core.CoreContainer$3.call(CoreContainer.java:629)

        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)

        at java.util.concurrent.FutureTask.run(FutureTask.java:138)

        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)

        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)

        at java.util.concurrent.FutureTask.run(FutureTask.java:138)

        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)

        at java.lang.Thread.run(Thread.java:662)

Caused by: org.apache.solr.common.SolrException: Could not load config for solrconfig.xml

        at org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:991)

        at org.apache.solr.core.CoreContainer.create(CoreContainer.java:1051)

        ... 10 more

Caused by: java.io.IOException: Can't find resource 'solrconfig.xml' in classpath or 'D:\work_imp\to

mcat\solrapp\solr\collection1\conf/', cwd=D:\work_imp\tomcat\bin

        at org.apache.solr.core.SolrResourceLoader.openResource(SolrResourceLoader.java:318)

        at org.apache.solr.core.SolrResourceLoader.openConfig(SolrResourceLoader.java:283)

        at org.apache.solr.core.Config.<init>(Config.java:103)

        at org.apache.solr.core.Config.<init>(Config.java:73)

        at org.apache.solr.core.SolrConfig.<init>(SolrConfig.java:117)

        at org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:989)

        ... 11 more

 

解决办法:

找到tomcat对应部署的solr配置文件目录:

我对应的目录:D:\work_imp\tomcat\webapps\solr\WEB-INF\web.xml

打开web.xml 搜索env-entry,会看到如下代码:

<!--
    <env-entry>
       <env-entry-name>solr/home</env-entry-name>
       <env-entry-value>/put/your/solr/home/here</env-entry-value>
       <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>
   -->

去掉注释,并编辑第二行,对应solr的目录   

   <env-entry>

       <env-entry-name>solr/home</env-entry-name>

       <env-entry-value>D:/work_imp/tomcat/slorapp/solr</env-entry-value>

       <env-entry-type>java.lang.String</env-entry-type>

    </env-entry>

红框中的value值即为solr.xml中的value值:

 关闭tomcat,再次重启 不会报错 ,在浏览器中输入http://localhost:8080/solr/

会显示如下画面,表示运行成功!

 

 

 

  • 大小: 19.1 KB
  • 大小: 110 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics