查看系统是否安装过java yum list installed | grep java 如果有旧版本的java,且你自己不需要,可以用如下方法卸载所有的java(后边的 * 符号是通配符) yum -y remove java-1.8.0-openjdk* 查看java软件包列表 yum list java* 注意 这里一定要安装openjdk的开发版本(即java-1.8.0-openjdk-devel.x86_64),不然默认安装的是运行环境版本,会导致/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.342.b07-1.el7_9.x86_64目录下只有jre文件夹,这会缺失某些命令,比如Java -version能找到,但是javac -version、jps -lm等命令找不到,而且没法配置环境变量等问题 安装我们需要的Java版本,这里我选择1.8版本 yum install java-1.8.0-openjdk-devel.x86_64 安装好后,使用where命令查看java安装位置 whereis java 一般都会在lib目录下,然后按照软连接指向一步步排查,可以找到jdk真实的目录位置 [root@localdomain1 nacos]# ll /usr/lib/jvm total 4 lrwxrwxrwx. 1 root root 26 Aug 18 17:19 java -> /etc/alternatives/java_sdk lrwxrwxrwx. 1 root root 32 Aug 18 17:19 java-1.8.0 -> /etc/alternatives/java_sdk_1.8.0 lrwxrwxrwx. 1 root root 40 Aug 18 17:19 java-1.8.0-openjdk -> /etc/alternatives/java_sdk_1.8.0_openjdk drwxr-xr-x. 7 root root 4096 Aug 18 17:19 java-1.8.0-openjdk-1.8.0.342.b07-1.el7_9.x86_64 # 实际目录,其他都是软连接,最终指向这个目录 lrwxrwxrwx. 1 root root 34 Aug 18 17:19 java-openjdk -> /etc/alternatives/java_sdk_openjdk lrwxrwxrwx. 1 root root 21 Aug 18 17:19 jre -> /etc/alternatives/jre lrwxrwxrwx. 1 root root 27 Aug 18 17:19 jre-1.8.0 -> /etc/alternatives/jre_1.8.0 lrwxrwxrwx. 1 root root 35 Aug 18 17:19 jre-1.8.0-openjdk -> /etc/alternatives/jre_1.8.0_openjdk lrwxrwxrwx. 1 root root 51 Aug 18 17:19 jre-1.8.0-openjdk-1.8.0.342.b07-1.el7_9.x86_64 -> java-1.8.0-openjdk-1.8.0.342.b07-1.el7_9.x86_64/jre 配置环境变量: 编辑/etc/profile文件,在文件最后追加变量配置 - vi /etc/profile 为什么设置变量? 系统在执行一些命令时是需要通过环境变量来找到当前命令的存放文件路径,从而正确的执行命令,否则你输入的命令只是一串字符串,系统并不知道要如何执行 #设置Java环境变量 export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.342.b07-1.el7_9.x86_64 export JRE_HOME=$JAVA_HOME/jre export PATH=$PATH:$JRE_HOME/bin:$JAVA_HOME/bin #在大多数情况下,安装Java并不需要手动配置CLASSPATH环境变量。从Java 8开始,Oracle推荐使用Java的内置工具javac和java来查找和加载类,而不必设置CLASSPATH环境变量。 #在默认情况下,Java会在以下位置查找类文件:1.当前目录(当前工作目录);2.系统类路径(classpath) #如果你在命令行中使用javac和java命令,Java会自动查找类文件。当你在当前目录下编译和运行Java程序时,不需要设置任何类路径。 #然而,如果你使用IDE(如Eclipse、IntelliJ IDEA等),它们通常会自动配置类路径,因此你不需要手动设置CLASSPATH环境变量。 #export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH 重新执行刚修改的初始化文件,使之立即生效 source /etc/profile 执行jps -lm命令,如果没有提示找不到命令,则表示已成功