无法在生产中启动Sunspot Solr

时间:2016-03-18 15:37:45

标签: java ruby-on-rails solr sunspot

我很难在生产中启动Sunspot Solr。当我尝试使用RAILS_ENV=production bundle exec rake sunspot:solr:run在我的Rails应用程序中运行前景中的太阳黑子时,我可以看到以下消息:

  

当前定义的JAVA_HOME   (/ usr / lib / jvm / java-7-openjdk-amd64 / jre / bin)指的是一个位置   无法找到Java。中止。修复JAVA_HOME变量   或者将其从环境中删除,以便系统路径可以   搜索。

我正在运行Ubuntu 15.10。我已经安装了openjdk-7-jre,我可以看到我的/ etc / environment文件包含:

LC_ALL=en_US.UTF-8
LANG=en_US.UTF-8
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64/jre/bin"

如果我echo $JAVA_HOME我得到:/usr/lib/jvm/java-7-openjdk-amd64/jre/bin这似乎是正确的,因为我可以看到该目录中的java二进制文件。我真的很难过,也无法弄清楚为什么Sunspot Solr没有开始投入生产。

非常感谢任何帮助。 提前谢谢!

1 个答案:

答案 0 :(得分:0)

通过在/ etc / environment中将$JAVA_HOME设置为/usr/lib/jvm/java-7-openjdk-amd64来解决此问题。然后必须创建以下内容:

mkdir -p /my/app/solr/production/data/index
mkdir -p /my/app/solr/production/data/tlog
touch /my/app/solr/production/core.properties

然后将以下内容添加到core.properties文件中:

name=production
configSet=sunspot
dataDir=./data

所有似乎现在都正常工作:)