无法 运行 solr(无法打开日志文件)

Cannot run solr (cannot open log file)

一直在尝试获取 solr running for a while now... finally seemed like I got it. Following this 教程。 运行 这个命令

bin/solr start

看到这篇文章

Waiting up to 30 seconds to see Solr running on port 8983

但是后来...

Still not seeing Solr listening on 8983 after 30 seconds!
tail: cannot open `/root/downloads/solr-6.0.0/server/logs/solr.log' for reading: No such file or directory

这让人非常沮丧。我尝试使用 sudo 运行 bin 命令,仍然没有成功。我做错了什么?

编辑:我 运行 它在前台

bin/solr start -f

得到这个

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/eclipse/jetty/start/Main : Unsupported major.minor version 52.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:643)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
    at java.net.URLClassLoader.access[=15=]0(URLClassLoader.java:73)
    at java.net.URLClassLoader.run(URLClassLoader.java:212)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:296)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:406)

我的 java-foo 不符合标准,所以我不知道该怎么做。

必须更新到 java 1.8 This 很有用

我遇到了同样的问题。确保这些已设置

java -version

输出

java version "1.8.0_77"
Java(TM) SE Runtime Environment (build 1.8.0_77-b03)
Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed mode)

echo $JAVA_HOME

产出

/usr/lib/jvm/java-8-oracle

注意:java 和 java 主路径的次要版本可能因系统而异。但要确保它们是相同的版本(Java 8).

请检查您的 /var/solr/logs/solr_gc.log 并查看它用于 install/start solr 的 java 版本。 在我的例子中,虽然设置了这些参数,但它使用的是 java 7。所以我卸载了 java 7 并再次启动 solr。它开始工作

Waiting up to 30 seconds to see Solr running on port 8983 [/]
Started Solr server on port 8983 (pid=11983). Happy searching!

此问题可能与 Solr 节点上的 RAM 大小有关。如果您在 RAM 较小的 VM 上使用 运行 Solr,启用交换或增加 RAM 应该可以解决此问题。

如果内存不足,可以运行 solr 执行以下命令:

bin/solr 重启-p 9983 -s "xxx_home" -m 4g -force

希望对您有所帮助

我最近更改了 solr.in.sh 文件中的堆大小,值为

SOLR_HEAP=-Xms1g -Xmx12g

但后来solr启动失败。试图遵循其他人提供的解决方案,但没有运气。 然后查看位于 /var/solr/logs/solr-port-console.log 的日志文件,这给了我以下错误:

Invalid initial heap size: -Xms-Xms1g -Xmx12g

Error: Could not create the Java Virtual Machine.

Error: A fatal exception has occurred. Program will exit

因此,我将 solr.in.sh 文件中 SOLR_HEAP 的值更改为“12g”,效果很好。

对于 Solr 6,存在一个错误,即 Jetty 无法加载包含 9 的 java 版本。details

我在文件 /var/solr/logs/solr-8983-console.log

中找到了有关该错误的更多信息