だからbash_config設定ファイルに
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export JAVA_PATH=$JAVA_HOME
export PATH=$PATH:$JAVA_HOME/bin
ただし、PATHを追加する代わりに、次のように設定します。
[admin@vml1wk111 ~]$ echo $PATH
$PATH:/usr/lib/jvm/java-1.8.0-openjdk/bin:/usr/local/sbin:/usr/sbin:/usr/lib/jvm/java-1.8.0-openjdk/bin:/home/admin/.local/bin:/home/admin/bin
$ PATHはエクスポートする必要がある変数ではなく、PATHの実際の内容です。
私は何が間違っていましたか?
私はしなければならない
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ログインするたびに。
答え1
これは不可能です。PATH
変数は以前ではなく後である/usr/local/sbin
ため、変数を他の場所で変更した可能性があります。その後には追加の付いた$JAVA_HOME/bin
別のものが来ます。/usr/lib/jvm/java-1.8.0-openjdk/bin
/home/admin/.local/bin:/home/admin/bin
そして起動時に設定ファイルを読みませんbash_config
。
~/.bash_profile
、~/.bashrc
およびを確認してください~/.profile
。
編集する:
デバッグするには、すべての行をコメントアウトするか/etc/profile.d/java.sh
(各行で始まるように#
)、バックアップとして別の場所に移動し、ディレクトリに別のファイルがあることを確認してください/etc/profile.d
。また、システム全体を確認してください/etc/profile
。
私はまだそれを読んでいる理由を理解していません/bash_profile
(これらのファイルのいずれかから取得できなかった場合)。読み込まれると(損傷した端)$HOME/.local/bin:$HOME/bin
まで拡張されて破損し、次に設定されます。/home/admin/.local/bin:/home/admin/bin
PATH
PATH
$PATH:\
/usr/lib/jvm/java-1.8.0-openjdk/bin:\
/usr/local/sbin:\
/usr/sbin:\
/usr/lib/jvm/java-1.8.0-openjdk/bin