2016-05-08 12 views
-1

私は、OracleのWebサイトからtar.gzファイルをダウンロードし、それを解凍してきましたのLinux SuseのjavaにSuseをインストールするには?

上のJava(JRE 1.8)をインストールしようとしています。

今、私は私のマシン上でJavaを持っていますが、私はそのようにそれを実行することができます。

./java -version 
java version "1.8.0_91" 
Java(TM) SE Runtime Environment (build 1.8.0_91-b14) 
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode) 

自身でコマンドを実行することはできません:

だから、
/usr/java/jdk1.8.0_91/bin # java -version 
If 'java' is not a typo you can run the following command to lookup the package that contains the binary: 
    command-not-found java 
-bash: java: command not found 

enter image description here

明らかに私は認識されないので、PATHに追加することはできません。

私には何が分からないのですか?

+0

実行可能な検索パスに '/ usr/java/jdk1.8.0_91/bin'ディレクトリを追加する必要があります。 'export PATH =/usr/java/jdk1.8.0_91/bin:$ {PATH}'のようになります。私はSuseに慣れていませんが、あなたのユーザの家には、この設定を追加できる '.profile'ファイルがいくつかあります。すべてのユーザーのためにそれを変更したい場合は、 '/ etc/profile'ファイルを探してください。 – SubOptimal

+0

しかし、それが "bin"ディレクトリ自体から実行されていない場合、PATHに追加するのはどのように意味がありますか? –

答えて

1

LinuxはWindowsではありません。実行可能ファイルをパスなしで起動すると、システムはPATHで指定されたディレクトリの1つに見つかった場合にのみ起動します。

実行する実行可能ファイルが現在のディレクトリにある場合でも、このディレクトリがPATHでない場合は実行されません。ディレクトリを明示的に指定すると、実行可能ファイルはディレクトリにも含めて実行されます(PATH)。

いくつかの小さな例を参照してください。

以下を仮定します。/usr/java/jdk1.8.0_91/binPATHに指定されていません。 /tmpPATHにないよう

cd /tmp 
java 

は失敗します。 (通常)があるよう

cd /tmp 
./java 

/tmpディレクトリにはjava実行に失敗しないだろう。 /usr/java/jdk1.8.0_91/binPATHにないよう

cd /usr/java/jdk1.8.0_91/bin 
java 

は失敗します。あなたが明示的にカレントディレクトリ./で見つかったjavaを実行するように指定するよう

cd /usr/java/jdk1.8.0_91/bin 
./java 

が実行されます。

+0

Suseでは/etc/profile.localを追加する必要があり、PATHの追加は通常のユーザーのアップグレードにも存続します。 rootの場合は/ etcにある.profileを確認してください。 –

+0

@ShacharHamuzimRajuanこの情報を追加してくれてありがとう、Suseに関連しています。使用されるLinuxディストリビューションによって、場所とファイル名が異なる場合があります。 – SubOptimal

関連する問題