我正在按照教程使用Windows 7,Java版本1.8和Solr版本4.10.2设置Solr(http://lucene.apache.org/solr/quickstart.html)。
Java安装在C:\ root \ java,Solr安装在c:\ root \ solr-4.10.2。
我添加了2个环境变量作为用户变量:
CLASSPATH = C:\ROOT\solr-4.10.2\dist\solr-core-4.10.2.jar
JAVA_HOME = c:\root\java
然后我在命令提示符下运行以下代码:
cd c:\root\solr-4.10.2\bin & solr start -e cloud -noprompt
输出粘贴在下面。尽管没有添加启动核心,但集合1的Solr服务器似乎工作正常。但是,为什么ZkCLI和SolrCLI会出现错误?我做错了吗?
Welcome to the SolrCloud example
Starting up Solr nodes for your example SolrCloud cluster.
Starting node1 on port 8983 using command:
solr -cloud -p 8983 -d node1
Waiting for 0 seconds, press a key to continue ...
Starting node2 on port 7574 using command:
solr -cloud -p 7574 -d node2 -z localhost:9983
Waiting for 0 seconds, press a key to continue ...
Now let's create a new collection for indexing documents in your 2-node cluster.
Deploying default Solr configuration files to embedded ZooKeeper
Error: Could not find or load main class org.apache.solr.cloud.ZkCLI
Creating new collection gettingstarted with 2 shards and replication factor 2 us
ing Collections API command:
"http://localhost:8983/solr/admin/collections?action=CREATE&name=gettingstarted&
replicationFactor=2&numShards=2&collection.configName=default&maxShardsPerNode=3
&wt=json&indent=2"
For more information about the Collections API, please see: https://cwiki.apache
.org/confluence/display/solr/Collections+API
Error: Could not find or load main class org.apache.solr.util.SolrCLI
SolrCloud example is running, please visit http://localhost:8983/solr"
c:\ROOT\solr-4.10.2\bin>java -version
java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b18)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)
c:\ROOT\solr-4.10.2\bin>
答案 0 :(得分:8)
在另一个site上找到它,它对我有用。
如果你在没有云选项的情况下运行solr,它会为云选项提供一些额外的工作。
因此,只需运行solr.cmd start
,然后solr.cmd stop -p 8983
即可进行准备。
然后最后运行solr.cmd start -e cloud -noprompt
。
在教程中应该注意,但Solr似乎并不适合Windows。我认为环境变量也很重要,所以感谢您的信息。
答案 1 :(得分:2)
另外,请确保您尚未下载源存档。从版本6.6.1(solr-6.6.1-src。)开始,源代码约为52mb,而本教程所需的归档文件大约为145mb(solr-6.6.1。)。< / p>
答案 2 :(得分:1)
遇到同样的问题。
问题源于solr目录中已存在的webapp目录。当演示运行zkcli.sh时,它会检查webapp目录是否存在,如果存在,则不会执行任何操作。如果它不存在,它实际上会在webapps目录中提取solr.war。默认情况下,使用4.10.2包,webapp目录存在但是为空,这会导致抛出有趣的类路径错误。
例如。你将solr-4.10.2.tgz提取到〜/ solr-4.10.2
转到〜/ solr-4.10.2 / example / solr-webapp / webapp,检查webapp目录中是否有任何内容(不应该),删除webapp目录。
应该解决问题。
答案 3 :(得分:1)
在SolrCloud章节中,参考指南明确指出:
&#34;确保在开始之前至少在非SolrCloud模式下从示例目录运行Solr一次;此过程解压缩运行SolrCloud所需的jar文件。但是,不要加载文档,只需启动一次并关闭它。&#34;
他们应该使用此信息更新教程。
答案 4 :(得分:1)
这对我有用
java -classpath example \ exampledocs \ post.jar -Dauto = yes -Dc = gettingstarted -Ddata = files -Drecursive = yes org.apache.solr.util.SimplePostTool docs /
https://cwiki.apache.org/confluence/display/solr/Post+Tool#PostTool-Windows
答案 5 :(得分:1)
我遇到了同样的问题,在搜索后我意识到我错过了“ant compile”步骤。
这对我有用
1073 tar -zxvf solr-5.3.1-src.tgz
1074 cd solr-5.3.1
1076 nano README.txt
1077 ant compile
1096 cd solr
1098 cd bin
1100 chmod a+x solr
1108 cd ..
1111 cd solr
1112 ant server
1113 bin/solr start
[vagrant@localhost solr]$ java -version
java version "1.7.0_91"
OpenJDK Runtime Environment (rhel-2.6.2.1.el7_1-x86_64 u91-b00)
OpenJDK 64-Bit Server VM (build 24.91-b01, mixed mode)
[vagrant@localhost solr]$ ant -version
Apache Ant(TM) version 1.9.2 compiled on June 10 2014
[vagrant@localhost solr]$ cat /etc/*release
CentOS Linux release 7.0.1406 (Core)
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CentOS Linux release 7.0.1406 (Core)
CentOS Linux release 7.0.1406 (Core)
答案 6 :(得分:0)
该类捆绑在solr-core-4.x.y.jar中,因此如果您在Solr中的Zookeeper之外运行实用程序脚本,则它必须在您的类路径中可用。
您可以在dist/solr-core-4.x.y.jar
下找到solr-core-4.x.y.jar。将x.y替换为您当前的版本号。
答案 7 :(得分:0)
Apache Solr的GitHub发行版不一定与Solr Reference Guide的发行版相对应。
我从Solr Reference Guide下载了.tgz安装文件,现在程序在bin/solr start
和bin/solr start -e cloud
的终端中运行
说明::在MacOS上,我从Solr Downloads page
下载了solr-8.1.0.tgz