一、解决方案
1.登入能执行命令的用户,修改用户系统变量(比如centos登入)
vim .bashrc
2.赋予sudo环境变量,设置别名
alias sudo="sudo env PATH=$PATH"
3.使其生效
source .bashrc
此后,便可以通过sudo命令执行java命令,sudo命令使用的环境为登入用户的环境
二、原因分析
查看sudo环境变量
sudo printenv PATH
使用root用户查看环境变量
sudo su - root
printenv PATH
可以看到在/etc/profile下配置的环境变量未生效到sudo下
增加了alias sudo="sudo env PATH=$PATH"后,sudo使用的环境发生了变更,可以执行相应命令