の正しいパスを決定することは、 Ubuntuシステムでは代替手段を使用するためJAVA_HOME
、少し複雑です。私のマシンでは、これは、代替が実際のjavaまたはjavacに到達する前に少なくとも2つのレベルの間接参照を作成する方法です。
usr/bin/javac -> /etc/alternatives/
/etc/alternatives/java -> /usr/lib/jvm/jdk1.7/bin/javac
に設定JAVA_HOME
した場合、別のJavaを使用するように代替を更新する/usr/lib/jvm/jdk1.7
と、システムJavaがが指すJavaと矛盾する可能性があります。JAVA_HOME
JAVA_HOME
私の質問は、代替案を使用するシステムでの正しい値は何ですか。JAVA_HOME
私はそれをに設定する必要があると思う傾向があります/usr
このようにして、 TOMCATまたはそれを使用するその他のソフトウェアは、「bin」を追加して、JAVA_HOME
必要なすべての実行可能ファイルを検索します。
JAVA_HOME
これは、代替を使用するシステムの正しい値ですか。ほとんどのソフトウェアJAVA_HOME
は実行可能ファイルを見つけるためだけに使用しますか、それともJDKにバンドルされている他のアーティファクト(セキュリティポリシーファイルなど)を見つけるために値を使用しますか?前者が当てはまる場合は、に使用できると思います/usr
がJAVA_HOME
、後者が当てはまる場合はJAVA_HOME
、代替機能を犠牲にするしか方法がないと思います。