フォローしようとしています。これ以下の情報を含むSolaris 10用のjdkをインストールする方法についての指示があるWebサイト:
$ isainfo -v
64-bit amd64 applications
ssse3 tscp sse3 sse2 sse fxsr mmx cmov amd_sysc cx8 tsc fpu
32-bit i386 applications
ssse3 tscp sse3 sse2 sse fxsr mmx cmov sep cx8 tsc fpu
指示に従って java -version コマンドを入力するとエラーが発生します。
$ java -version
bash: java: command not found
誰でも助けることができますか?ありがとう
私が取ったステップは次のとおりです。
$ ls -l
total 14
drwxr-xr-x 6 root bin 512 Sep 17 11:17 instances
lrwxrwxrwx 1 root other 7 May 12 14:21 j2sdk1.4.2_34 -> ../j2se
lrwxrwxrwx 1 root other 18 May 12 14:22 jdk1.5.0_32 -> instances/jdk1.5.0
lrwxrwxrwx 1 root other 18 May 12 14:21 jdk1.6.0_37 -> instances/jdk1.6.0
lrwxrwxrwx 1 root root 22 Sep 17 11:20 jdk1.7.0_67 -> instances/jdk1.7.0_67/
lrwxrwxrwx 1 root root 11 Sep 18 09:42 latest -> jdk1.7.0_67
drwxr-xr-x 8 root bin 512 May 12 15:04 packages
$ rm latest
$ ln -s instances/jdk1.7.0_67 jdk1.7.0_67
$ ln -s jdk1.7.0_67 latest
$
$ pwd
/usr/jdk
$
$ cd /usr/
$ ls -ld
drwxr-xr-x 43 root sys 1024 Sep 18 09:45 .
$ ls -ld java
lrwxrwxrwx 1 root root 10 Sep 18 09:43 java -> jdk/latest
$ pwd
/usr
$ rm java
$ ls -ld java
java: No such file or directory
$ ls -ld
drwxr-xr-x 43 root sys 1024 Sep 18 10:24 .
$
$ ln -s jdk/latest java
$ java -version
bash: java: command not found
修正する
$ echo $PATH
/usr/sbin:/usr/bin:/usr/java/bin:/usr/ant/apache-ant/bin:/u01/oracle/middleware/wlserver_10.3/common/bin:/opt/CollabNet_Subversion/bin
Error
$ java -version
bash: java: command not found
アップデート2 他のエクスポート出力を省略
$ PATH=$PATH:/usr/jdk/instances/jdk1.7.0_67/bin
$ export path
$ export
declare -x ANT_HOME="/usr/ant/apache-ant"
declare -x HOME="/"
declare -x JAVA_HOME="/usr/java"
declare -x JAVA_OPTS="-Xms512m -Xmx1024m"
declare -x PATH="/usr/sbin:/usr/bin:/usr/java/bin:/usr/ant/apache-ant/bin:/u01/oracle/middleware/wlserver_10.3/common/bin:/opt/CollabNet_Subversion/bin:/usr/jdk/instances/jdk1.7.0_67/bin"
declare -x PWD="/usr/java/bin/amd64"
declare -x SHELL="/bin/bash"
declare -x TERM="xterm"
$ java -version
bash: java: command not found
答え1
あなたが何かを作成していると信じているので、これはあなたの質問に対する複雑な答えです。方法必要以上に複雑です。
あなたのインストールにどのような問題があるかを推測してみましょう。 Solarisの64ビットJavaに関する以下を参照すると、あなたが間違っていることは次のとおりです。ただSolaris用の64ビットJavaオーバーレイがインストールされました。それは動作しません。
さて、今あなたの関心を集めているので(:-))皆さんが間違った道を行っていると思う理由を許してください。
あなたが言及したブログを私がフォローするかどうかはわかりません。私の経験によれば、Solaris自体はJavaプロセス(登録ツールデーモン、Webコンソール、汎用エージェントコンテナなど。実際には重要ではありませんが、まだ)を起動でき、システム全体のJavaを変更するのはおそらく悪い考えです。あるいは、少なくとも各アプリケーションに対する制御力が低下する。単にシステムを離れると、Javaははるかに簡単です方法、IMHO。
以下は、SolarisでJavaを処理する方法について私が高く評価するガイドです。
一般:システムの専門家として絶対に始めないでください。 java.com。コンシューマ/デスクトップコンピュータで使用できます。常に使用Oracle Tech NetworkサイトのJava(私はまだ使用しています。http://java.sun.com私はこのリンクが今後10年間働き続けると確信しています:-))
システム全体のJavaはそのままにしてください。その人生を生きておいてください。
Javaパッケージを別のものとして抽出し
/opt/java
ます/apps/java
。どこかにあなたコントロールすると自然に感じられます。JAVA_ROOT
これからそのように呼びましょう。java.sun.com
これらのパッケージを解凍すると、JAVA_ROOT
サブディレクトリは次のように表示されます(例)。
jdk1.7.0_05
jdk1.7.0_09
jdk1.7.0_17
jdk7 -> jdk1.7.0_17
jre -> jre7
jre1.6.0_32
jre1.7.0_05
jre1.7.0_17
jre1.8.0_20
jre6 -> jre1.6.0_32
jre7 -> jre1.7.0_17
jre8 -> jre1.8.0_20
シンボリックリンクの使い方をご覧ください。わかりました、わかりますか?
アプリケーションの起動時に
PATH
必要なJavaを指すだけです(アプリケーションの起動時に)。一部のアプリケーションでは、変数を設定したい場合がありますJAVA_HOME
。これでアプリケーションごとに制御できます。アプリケーション起動スクリプトでシンボリックリンクを使用している場合は、必要に応じてシステム全体で変更できる機能をいくつか維持できます。アプリケーションに特定のバージョンのJavaが必要な場合は、シンボリックリンクの1つではなく特定のバージョンを指すようにしてください。64ビットシステムに関する重要な注意:Java 7より前(および含む)にインストールする必要があります。二つ64ビットサポートは実際には32ビットパッケージのオーバーレイとして提供されるため、java.sun.comのパッケージは互いに重なり合っています。これは他のすべてのオペレーティングシステムとは異なるため、ほとんどの人を混乱させます。 32ビットJavaを使用したくない場合でも、最初に32ビットJavaパッケージを挿入してから64ビットJavaパッケージで上書きする必要があります。幸いなことに、OracleはSolaris用の32ビットJavaを提供しなくなったため、Java 8ではこの状況が変わりました。
このソリューションの明らかな欠点は、Javaパッケージマネージャを使用する利点を見逃すことです。短所よりも長所がはるかに大きいと思います。自分で判断してください。
優れたパッケージマネージャを備えたSolaris 11でも、私はこのソリューションがまだ好きです。
答え2
する
PATH=$PATH:/usr/jdk/instances/jdk1.7.0_67/bin
export PATH
そしてもう一度やり直してください。
答え3
Solarisでは、このjava
コマンドは通常(通常はそうではありません)通常インストールされている/usr/bin/java
バイナリ/usr/bin/java
へのシンボリックリンクを表しますjava
。
たとえば、私のSolarisシステムの1つでは:
dev:/ which java
/usr/bin/java
dev:/ ls -l /usr/bin/java
lrwxrwxrwx 1 root other 16 Nov 19 2013 /usr/bin/java -> ../java/bin/java
dev:/
これをシンボリックリンクとして使用すると、他のバージョンのJavaを簡単にインストールできます。/usr/bin/java
新しくインストールされたバイナリバージョンにリンクを変更すると、java
新しいバージョンが使用されます。以前のバージョンに戻す必要がある場合は、シンボリックリンクを非常にすばやく古い値に変更できます。
リンクがまだ存在しない場合は、リンクを設定します。
ln -s <path to java binary that you wish to use> /usr/bin/java