Java_home Linux端末には対応するファイルやディレクトリがありません。

Java_home Linux端末には対応するファイルやディレクトリがありません。

こんにちは。 Linux端末にbashが表示されるのに問題があります。 java_home:no such file ordirectoryと入力すると、echo $ JAVA_HOMEと入力すると、/usr/lib/jvm/java-8-openjdk-amd64が表示され、echo $PATHに/usr/libが表示されます。 /jvm/java-8-openjdk-amd64/bin:/usr/lib/jvm/java-8-openjdk-amd64/bin:/usr/local/sbin:/usr/local/bin:/usr /sbin:/ usr/bin:/sbin:/bin:/usr/games:/usr/local/games. sudo apt-get installを作成すると、JAVA_HOME:not findの問題が見つかりません。私はkubuntuを使用しています。以下では、ホームディレクトリにある端末と.profileファイルを表示できます。たぶん誰かがそれを解決する方法を知っているかもしれません。よろしくお願いします。

ここに画像の説明を入力してください。

ここに画像の説明を入力してください。

ベストアンサー1

主なエラーメッセージは次のとおりです。

/usr/sbin/update-info-dir: 2: /etc/environment: JAVA_HOME: not found

これは、エラーメッセージが/usr/sbin/update-info-dirパッケージのインストール/削除操作の一部として実行できるスクリプトであることを示しています。ファイルの読み込み中(インポート中)/etc/environmentエラーが発生しました。

/etc/environmentPOSIXシェルスタイルの環境変数の割り当てのみを含める必要があります。つまり、

VARIABLE_NAME=value

あなたは持っている必要があります等号の前または後ろにスペースはありません。:空白がある場合、変数名はシェルコマンドとして解釈され、シェルはそれを実行しようとします。

あなたの/etc/environmentファイルには次の内容が含まれているようです。

JAVA_HOME = /usr/lib/jvm/java-8-openjdk-amd64

$JAVA_HOMEしたがって、ファイルを読み取るシェルは、パス名を環境変数に割り当てるのではなく、それを実行するシェルコマンドとして解釈します。JAVA_HOME2つの引数=を使用して、文字通り名前付きコマンドを実行しようとします/usr/lib/jvm/java-8-openjdk-amd64。名前付きコマンドがJAVA_HOME存在しないため、エラーメッセージが表示されます。

ファイルを編集し/etc/environment、環境変数割り当て媒体記号の前後のすべてのスペースを削除します。

おすすめ記事