Java Solr 8.3.1:无法找到或加载org.apache.Solr.util.SolrCLI

Java Solr 8.3.1:无法找到或加载org.apache.Solr.util.SolrCLI,java,java-8,solr,solr8,Java,Java 8,Solr,Solr8,因此,我是Solr的新手,大部分时间都在使用Solr 8.3.1(发布时的最新版本)学习教程 我已经在我的Windows10机器上安装了Java版本1.8.0_181,并且在PATH变量中添加了solr/bin 当我运行solr start时,我得到: /d/Program Files and Documents/solr-8.3.1/bin/solr: line 1525: ulimit: -m: invalid option ulimit: usage: ulimit [-SHabcdefi

因此,我是Solr的新手,大部分时间都在使用Solr 8.3.1(发布时的最新版本)学习教程

我已经在我的Windows10机器上安装了Java版本1.8.0_181,并且在PATH变量中添加了solr/bin

当我运行
solr start
时,我得到:

/d/Program Files and Documents/solr-8.3.1/bin/solr: line 1525: ulimit: -m: invalid option
ulimit: usage: ulimit [-SHabcdefiklmnpqrstuvxPT] [limit]
*** [WARN] *** Your open file limit is currently 256.
 It should be set to 65000 to avoid operational disruption.
 If you no longer wish to see this warning, set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh
*** [WARN] ***  Your Max Processes Limit is currently 256.
 It should be set to 65000 to avoid operational disruption.
 If you no longer wish to see this warning, set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh
/d/Program Files and Documents/solr-8.3.1/bin/solr: line 1542: [: !=: unary operator expected
NOTE: Please install lsof as this script needs it to determine if Solr is listening on port 8983.

Started Solr server on port 8983 (pid=). Happy searching!
Found 1 Solr nodes:

Solr process 56136 from /d/Program Files and Documents/solr-8.3.1/bin/solr-8983.pid not found.
这告诉我它开始运行了,但当我运行
solr status
时,我得到:

/d/Program Files and Documents/solr-8.3.1/bin/solr: line 1525: ulimit: -m: invalid option
ulimit: usage: ulimit [-SHabcdefiklmnpqrstuvxPT] [limit]
*** [WARN] *** Your open file limit is currently 256.
 It should be set to 65000 to avoid operational disruption.
 If you no longer wish to see this warning, set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh
*** [WARN] ***  Your Max Processes Limit is currently 256.
 It should be set to 65000 to avoid operational disruption.
 If you no longer wish to see this warning, set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh
/d/Program Files and Documents/solr-8.3.1/bin/solr: line 1542: [: !=: unary operator expected
NOTE: Please install lsof as this script needs it to determine if Solr is listening on port 8983.

Started Solr server on port 8983 (pid=). Happy searching!
Found 1 Solr nodes:

Solr process 56136 from /d/Program Files and Documents/solr-8.3.1/bin/solr-8983.pid not found.
这似乎不对。我继续学习教程,运行了
solr start-e cloud
,得到了:

$ solr start -e cloud
/d/Program Files and Documents/solr-8.3.1/bin/solr: line 1525: ulimit: -m: invalid option
ulimit: usage: ulimit [-SHabcdefiklmnpqrstuvxPT] [limit]
*** [WARN] *** Your open file limit is currently 256.
 It should be set to 65000 to avoid operational disruption.
 If you no longer wish to see this warning, set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh
*** [WARN] ***  Your Max Processes Limit is currently 256.
 It should be set to 65000 to avoid operational disruption.
 If you no longer wish to see this warning, set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh
/d/Program Files and Documents/solr-8.3.1/bin/solr: line 1542: [: !=: unary operator expected
Error: Could not find or load main class org.apache.solr.util.SolrCLI
我尝试了
solr start-e techproducts
,得到了同样的结果

我已经在Solr的早期版本中看到了这个问题的答案,通常答案涉及更新Solr版本。。。我最近已经在哪了?我肯定我错过了一些愚蠢的东西,但任何指向正确方向的指针都将不胜感激!非常感谢

编辑1:解决了!正在使用基于Cygwin的Git Bash。与Windows命令提示符和Windows Powershell配合使用,效果非常出色

solr start的输出

Java HotSpot(TM) 64-Bit Server VM warning: JVM cannot use large page memory because it does not have enough privilege to lock pages in memory.
Waiting up to 30 to see Solr running on port 8983
Started Solr server on port 8983. Happy searching!
solr状态的输出

Found Solr process 50764 running on port 8983
{
  "solr_home":"D:\\Program Files and Documents\\solr-8.3.1\\server\\solr",
  "version":"8.3.1 a3d456fba2cd1b9892defbcf46a0eb4d4bb4d01f - ishan - 2019-11-29 11:51:37",
  "startTime":"2019-12-19T22:20:25.127Z",
  "uptime":"0 days, 0 hours, 0 minutes, 14 seconds",
  "memory":"176.3 MB (%34.4) of 512 MB"}

solr start-e cloud的输出


Welcome to the SolrCloud example!

This interactive session will help you launch a SolrCloud cluster on your local workstation.
To begin, how many Solr nodes would you like to run in your local cluster? (specify 1-4 nodes) [2]:


似乎您正在从
/d/…
路径运行cygwin下的*nix版本的
bin/solr
。在Windows下,您应该在标准命令行控制台(`cmd.exe`)中使用
bin/solr.cmd
命令


似乎
solr.in
脚本包含cygwin中bash版本无法识别的选项。我猜这也可能会影响类路径的设置,这意味着类在预期的位置找不到。

你100%正确。。。我用的是GitBash。我确认它可以在Windows命令提示符和Windows Powershell下正常工作(我将使用正确的输出编辑问题,以便人们知道他们的样子)。非常感谢!您认为Unix系统中的PuTTY是否可能存在类似的问题?