Solaris jdk 7 インストールエラー java -version 対応するファイルまたはディレクトリがありません。

Solaris jdk 7 インストールエラー java -version 対応するファイルまたはディレクトリがありません。

フォローしようとしています。これ以下の情報を含む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でも、私はこのソリューションがまだ好きです。

おすすめ記事