私はちょうど以下のスクリプトを実行し、JDKを正しい場所に取り出して解凍します。問題は、すべてjava
コマンド(/urs/binにコピーされたもの)がエラーを起こすことです。私はcd
(私は今JDK/binにあります)を使ってJDKのインストールディレクトリに移動し、./java -version
と入力して:./java: No such file or directory
を入力してください。ただしjava
はそこにあります。 JDKのls -l
は、すべてjava
クライアントがビンの内部にあることを示しています。 ls -l /usr/lib/jvm/jdk1.7.0_02/bin/java
を実行Javaがリストにインストールされていますが、実行によって "./java:そのようなファイルまたはディレクトリがありません"
#!/bin/bash
#Author: Yucca Nel http://thejarbar.org
#Will restart system
#Modify these variables as needed...
tempWork=/tmp/work
locBin=/usr/local/bin
javaUsrLib=/usr/lib/jvm
sudo mkdir -p $javaUsrLib
mkdir -p $tempWork
cd $tempWork
#Update this line to reflect newer versions of JDK...
wget http://download.oracle.com/otn-pub/java/jdk/7u2-b13/jdk-7u2-linux-i586.tar.gz
#Extract the download
tar -zxvf $tempWork/*
#Move it to where it can be found...
sudo mv -f $tempWork/jdk1.7* $javaUsrLib/
sudo ln -f -s $javaUsrLib/jdk1.7*/bin/* /usr/bin/
sudo rm -rf $tempWork
#Update this line to reflect newer versions of JDK...
export JAVA_HOME="$javaUsrLib/jdk1.7.0_02"
if ! grep "JAVA_HOME=$javaUsrLib/jdk1.7.0_02" /etc/environment
then
echo "JAVA_HOME=$javaUsrLib/jdk1.7.0_02"| sudo tee -a /etc/environment
fi
sudo /sbin/reboot
exit 0
は私を与える:
[email protected]:~$ -rwxr-xr-x 1 yucca yucca 5654 2011-11-17 22:38 /usr/lib/jvm/jdk1.7.0_02/bin/java
も走っ:file /usr/lib/jvm/jdk1.7.0_02/bin
の出力で:あなたは32ビットのランタイム環境せずに、64ビットシステム上で実行している
/usr/lib/jvm/jdk1.7.0_02/bin: directory
Javaをインストールするために再起動しますか?それは「Unix Way」ではない。 –
@MarcBユーザーが端末を閉じると、環境(Javaの場合)は失われません。私のスクリプトは数日前に働きました。私がbash -xで動いたときに、jdkが完全に解凍されているのが見えます... – thejartender
いいえ、 '/ etc/environment'は、すべての新しいシェルにJAVA_HOME変数が表示されるようにします。再起動のために私が考えることができる唯一の理由は、現在実行中のjvmsがすべて終了していることを確認することです。 –