私はneo4j 1.9.4サーバーを起動し、neo4j info
を実行しました。出力には次の行が含まれています。
JAVA_HOME: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
明らかに、私はJAVA_HOMEを設定する必要がありました。何を設定するのですか? /usr/libexec/java_home
は同じディレクトリを返します。 JavaVirtualMachinesディレクトリには他のサブフォルダは含まれていません。そこで、私は(システム環境設定からアクセスされる)Javaコントロールパネルを調べようとしました。 「Javaの」タブの下で、「ビュー」をクリックし、7u45のパスが与えられます。
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java
だから私はContents/Home
ディレクトリが同型だったことを推測し、これを試してみました:何も良いことだん
$ export JAVA_HOME=/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
$ neo4j start
WARNING! You are using an unsupported Java runtime. Please use Oracle(R) Java(TM) Runtime Environment 7.
Using additional JVM arguments: -server -XX:+DisableExplicitGC -Dorg.neo4j.server.properties=conf/neo4j-server.properties -Djava.util.logging.config.file=conf/logging.properties -Dlog4j.configuration=file:conf/log4j.properties -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -Dneo4j.ext.udc.source=homebrew
Starting Neo4j Server...WARNING: not changing user
process [34808]... waiting for server to be ready. Failed to start within 120 seconds.
Neo4j Server may have failed to start, please check the logs.
。
私は検索してthis postを見つけ、Lasseのアドバイスで/usr/local/Cellar/neo4j/1.9.4/libexec/bin/utils
を編集しました。私は2つの行を追加:
# check if running Oracle JDK 7, warn if not
checkjvmcompatibility() {
+ echo $JAVACMD
+ $JAVACMD -version
$JAVACMD -version 2>&1 | egrep -q "Java HotSpot\\(TM\\) (64-Bit Server|Server|C
lient) VM"
if [ $? -eq 1 ]
then
echo "WARNING! You are using an unsupported Java runtime. Please use Oracle(R) Java(TM) Runtime Environment 7."
else
$JAVACMD -version 2>&1 | egrep -q "java version \"1.7"
if [ $? -eq 1 ]
then
echo "WARNING! You are using an unsupported version of the Java runtime. Please use Oracle(R) Java(TM) Runtime Environment 7."
fi
fi
}
をそして再び試してみました:
$ neo4j start
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java
bin/utils: line 349: /Library/Internet: No such file or directory
WARNING! You are using an unsupported Java runtime. Please use Oracle(R) Java(TM) Runtime Environment 7.
のパスにスペースが混乱しているように見えます。私はそれを脱出しようとしましたが、私の最初のアプローチは失敗しました:
$ export JAVA_HOME="'/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home'"
$ neo4j start
Error: JAVA_HOME is not defined correctly.
We cannot execute '/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home'/bin/java
そして私は、単純な(必ずしも良くない)ソリューションは、単にシンボリックリンクを作ることであると判断しました:
$ cd /Library/
$ sudo ln -s Internet\ Plug-Ins/ Internet-Plug-Ins
$ export JAVA_HOME=/Library/Internet-Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
この時点neo4j start
で正しく走った。私はv2.0.0-M6にアップグレードすることができましたが、それでも機能しました。
このファイルをダウンロードしてbinディレクトリに入れて、空白を含むパスにJAVA_HOMEを設定してみてください。https://raw.github.com/mneedham/neo4j/54f47c41164d9c317aefefc2a37149bac283adda/packaging/standalone/src/メイン/ディストリビューション/シェルスクリプト/ bin/neo4j。そして、それが正しく始めることができるかどうか私に知らせてください。 –
これはうまくいった、ありがとう! – philh
それは魅力のように機能します!ありがとうございました ! – user1713964