Java 6 JREをVPSにうまくインストールしましたが、EE SDKインストールを実行することさえできません。
root@vps [/usr/Java]# Java -version
Java version "1.6.0_18"
Java(TM) SE Runtime Environment (build 1.6.0_18-b07)
Java HotSpot(TM) Client VM (build 16.0-b13, mixed mode)
ただし、Java_ee_sdk-6-unix.sh
を実行しようとすると:
./ ../ Java_ee_sdk-6-unix.sh* jre1.6.0_18/ jre.bin*
root@vps [/usr/Java]# ./Java_ee_sdk-6-unix.sh
Could not locate a suitable jar utility.
Please ensure that you have Java 6 or newer installed on your system
and accessible in your PATH or by setting Java_HOME
しかし、問題は、環境変数を正しく設定していることです。
root@vps [/usr/Java]# echo $PATH
/usr/Java/jre1.6.0_18:/usr/Java/jre1.6.0_18/bin:/usr/Java/jre1.6.0_18/jre/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/bin:/sbin
root@vps [/usr/Java]# export -p | grep Java_HOME
declare -x Java_HOME="/usr/Java/jre1.6.0_18"
ここで髪を引っ張っています。
JDKがインストールされていますか? jar
はJREではなくJDKに付属しているため、JREの$JDK_HOME/bin
ではなく/bin
をPATHに置くことをお勧めします。
これを行う:
ln -s /opt/jdk1.6.0_16 /opt/jdk
編集$HOME/.bashrc
:
Java_HOME =/opt/jdk
PATH = $ PATH:$ HOME/bin:$ Java_HOME/bin
ログアウトして再度ログインします。
これには多くの利点があります。
私はこれを何年も行っており、Javaで問題が発生したことは一度もありません。ただし、Javaがインストールされていて、インストールを試行していることを検出しないパッケージは例外です。 OpenJDK。
また、OpenJDKのフォントは非常に見にくいため、近づかないでください。
私のための迅速で汚い解決策:
Sudo apt-get install jarwrapper fastjar
次に、.shスクリプトを実行してください。
問題がありましたが、.shファイルを実行するときにSudoユーザーアカウントに関連していました。 Ubuntu 10.4 64ビットOSを搭載した新しいVPSホストサーバーにGlassfish v3をインストールしていました。
Sudo chmod +x Java_ee_sdk-6u2-jdk-linux-x64.sh
Sudo ./Java_ee_sdk-6u2-jdk-linux-x64.sh -s -a Java_ee_sdk-6u2-jdk-linux-x64-install-answers.txt
最初に発生したのとまったく同じエラーを取得するためだけです:
Could not locate a suitable jar utility.
Please ensure that you have Java 6 or newer installed on your system
and accessible in your PATH or by setting Java_HOME
本当にばかげて、私がこのようなコマンドを実行したとき:
./Java_ee_sdk-6u2-jdk-linux-x64.sh -s -a Java_ee_sdk-6u2-jdk-linux-x64-install-answers.txt
私の驚いたことに、それは次のように答えました:
Welcome to GlassFish V3 installer
Using the user defined Java_HOME : /opt/jdk
Entering setup...
これは、Java_HOMEをファイル/etc/bash.bashrc
に設定した後のことです。
Java_HOME=/opt/jdk
export Java_HOME
PATH=$PATH:$Java_HOME/bin
export PATH
同じエラーが発生しました。私はapt-getを使用してOpenJDKを削除し(私はUbuntu 11.10を実行しています)、Java JDK 1.7(もちろんJREに付属しています)をダウンロードし、/ usr/local/Javaに解凍しました-これにより私の新しいディレクトリ:
/usr/local/Java/jdk1.7.0_04
次に追加しました:
/usr/local/Java/jdk1.7.0_04
$ PATHに、$ Java_HOMEと$ JRE_HOMEを次のように設定します
/usr/local/Java/jdk1.7.0_04
/usr/local/Java/jdk1.7.0_04/jre
それぞれ。
すべてがうまくいきます。 Javaプログラムをjavacを使用してコンパイルし、Javaを使用して実行できます。Jarプログラムも問題なく実行できます。では、なぜJava eeインストーラがそれについて文句を言うのですか?それを修正する方法の手がかりはありますか?
私の場合、ホームディレクトリにjdk1.6.0_16を抽出し、/javac
のJava
および/bin
へのシンボリックリンクを作成しました。次に、質問で上記のエラーが発生しました。
ただし、/bin
にjar
へのシンボリックリンクを含めると、インストールするシェルスクリプトJava EEが期待どおりに実行されました。
私の2セント...
同じ問題があり、jarユーティリティをインストールすることで解決します。
"matt b"は、問題は(まあ私の問題です)、インストーラーがインストールファイルを実行するために必要なjarユーティリティ(jarプログラム)を見つけられなかったことを言いました。
JDKがインストールされていますか? jarはJREではなくJDKに付属しているため、JREの/ binではなく、$ JDK_HOME/binをPATHに置くことをお勧めします。
しかし、私の場合(Ubuntu 11.10 x64とJava_HOME->/usr/lib/jvm/Java-6-openjdkを使用)、PATHにJDK/bin dirを設定しても問題は修正されませんでした。代わりに、Jarwrapperバージョン0.37ubuntu1と呼ばれるjarユーティリティパッケージ(Synapticを使用)をインストールする必要がありました。
インストール後、OracleのJDKのインストールスクリプト(Java_ee_sdk-6u3-jdk7-linux-x64-ml.sh)は問題なく実行されました。
よろしく、