java安装,环境变量设置
vim /etc/profile
export JAVA_HOME=/data/java-1.8.0_171
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export HISTTIMEFORMAT="%F %T"
export TIME_STYLE='+%Y-%m-%d %H:%M:%S'
chmod -R 755 /data/java-1.8.0_171
解决sudo执行java失败的问题
sudo ln -s /data/java-1.8.0_171/bin/java /usr/bin/
sudo ln -s /data/java-1.8.0_171/bin/javac /usr/bin/
root账户执行:
cat << EOF >> ~/.bashrc
source /etc/profile
EOF
问题1:sudo java : command not found,每次sudo su切换root用户,都要source /etc/profile
运行sudo java -version报错
$ sudo java -version
sudo: java:找不到命令
原因:
当使用sudo去执行一个程序时,处于安全的考虑,这个程序将在一个新的、最小化的环境中执行,诸如PATH这样的环境变量,在sudo命令下已经被重置成默认状态了。所以当一个刚初始化的PATH变量中不包含你所要运行的程序所在的目录,用sudo去执行,你就会得到"command not found"的错误提示。
查看sudo指令下的PATH变量:
$ sudo printenv PATH
/sbin:/bin:/usr/sbin:/usr/bin
解决方案
root账户执行:
cat << EOF >> ~/.bashrc
source /etc/profile
EOF
问题2:-bash: /data/java-1.8.0_171/bin/java: Permission denied
chmod -R 755 /data/java*