• Windows11与CentOS7下配置与检测JDK与Maven环境变量


    安装过程参考我这篇:Java开发环境的搭建与测试及相关问题的解决

    JDK

    一、Windows

    需要配置三个系统内变量,分别为CLASSPATHPATHJAVA_HOME

    CLASSPATH 变量
    .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar 或者 .;%java_home%\lib;%java_home%\lib\tools.jar

    在这里插入图片描述

    PATH 变量
    系统变量path中添加 %JAVA_HOME%\bin%JAVA_HOME%\jre\bin

    注意:在系统变量path中添加 %JAVA_HOME%\bin%JAVA_HOME%\jre\bin,分别点击‘上移’,将它们移动到第二个第三个位置。
    在这里插入图片描述

    将系统变量path中 C:\Windows\system32上移到第一位,这样的话,path系统变量就会呈现上下目录形式,如果不这样做,点击确定保存更改后,再次编辑系统变量path时,就会发现path系统变量会变成一个长条,非常难以修改和查看

    1.1 只配置单个JDK的JAVA_HOME

    JAVA_HOME D:\Java\jdk-1.8u371

    1.2 同时配置多个JDK的JAVA_HOME

    当需要使用JDK8时,就把JAVA_HOME配置成%JAVA_HOME8%
    在这里插入图片描述
    在这里插入图片描述

    当需要使用JDK9时,就把JAVA_HOME配置成%JAVA_HOME9%
    在这里插入图片描述
    在这里插入图片描述

    当需要使用JDK11时,就把JAVA_HOME配置成%JAVA_HOME11%
    在这里插入图片描述
    在这里插入图片描述

    当需要使用JDK17时,就把JAVA_HOME配置成%JAVA_HOME17%
    在这里插入图片描述
    在这里插入图片描述

    当需要使用JDK19时,就把JAVA_HOME配置成%JAVA_HOME19%

    JAVA_HOME      %JAVA_HOME8%
    
    JAVA_HOME8     D:\Java\jdk-1.8u371
    JAVA_HOME9     D:\Java\jdk-9.0.4
    JAVA_HOME11    D:\Java\jdk-11
    JAVA_HOME17    D:\Java\jdk-17
    JAVA_HOME19    D:\Java\jdk-19
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    1.3 安装Maven

    download.cgi
    maven-3
    /maven-3/3.6.2/
    /maven-3/3.6.2/binaries/

    下载配置参考我这篇 Maven官方镜像仓库与阿里云云效Maven
    apache-maven-3.6.2-bin.zipWindows的版本、apache-maven-3.8.7-bin.tar.gzlinux版本。

    //1、配置系统变量MAVEN_HOME   
    MAVEN_HOME            D:\develop\maven\apache-maven-3.3.3-bin\apache-maven-3.3.3
    
    //2、配置系统变量path
    在系统变量path中添加     %MAVEN_HOME%\bin
    
    • 1
    • 2
    • 3
    • 4
    • 5

    注意:配置完使用mvn -v命令检测时,需要重新打开新的cmd窗口进行检测。

    2.1 CentOS7下配置JDK与Maven环境变量

    2.1.1 不要安装java-1.8.0-openjdk

    建议不要安装 java-1.8.0-openjdk ,默认安装目录JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.382.b05-1.el7_9.x86_64,而安装好maven后,使用mvn -v,检测maven版本会报错 JAVA_HOME should point to a JDK not a JRE

    当时配置的环境变量(/etc/profile文件)

    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.382.b05-1.el7_9.x86_64
    
    export JRE_HOME=${JAVA_HOME}/jre
    
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
    
    export PATH=${PATH}:${JAVA_HOME}/bin
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    mvn文件的相关检测脚本(安装目录/data/maven/apache-maven-3.6.32/bin/mvn文件)

    if [ -z "$JAVA_HOME" ] ; then
      JAVACMD=`which java`
    else
      JAVACMD="$JAVA_HOME/bin/java"
    fi
    
    if [ ! -x "$JAVACMD" ] ; then
      echo "The JAVA_HOME environment variable is not defined correctly" >&2
      echo "This environment variable is needed to run this program" >&2
      echo "NB: JAVA_HOME should point to a JDK not a JRE" >&2
      exit 1
    fi
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    mvn文件的相关检测脚本截图
    在这里插入图片描述
    并且 java-1.8.0-openjdk 目录JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.382.b05-1.el7_9.x86_64有jre目录,没有lib目录(使用tree -d命令查看树状图),导致环境变量配置export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib的配置是有问题的。

    //安装tree命令
    //1、安装tree  Fedora、RedHat、CentOS
    yum install tree
    
    //2、安装tree Ubuntu
    apt get-intall tree
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    在这里插入图片描述

    2.1.2 卸载java-1.8.0-openjdk

    //1、卸载现有环境  查询java相关程序
    //.noarch文件可以不用管,卸载其他的
    rpm -qa | grep java
    
    [root@freedomdjc jvm]# rpm -qa | grep java
    tzdata-java-2023c-1.el7.noarch
    python-javapackages-3.4.1-11.el7.noarch
    java-1.8.0-openjdk-headless-1.8.0.382.b05-1.el7_9.x86_64
    java-1.8.0-openjdk-1.8.0.382.b05-1.el7_9.x86_64
    javapackages-tools-3.4.1-11.el7.noarch
    [root@freedomdjc jvm]# 
    
    .noarch文件可以不用管,卸载其他的
    
    
    
    //2-卸载
    rpm -e --nodeps  java-1.8.0-openjdk-headless-1.8.0.382.b05-1.el7_9.x86_64
    rpm -e --nodeps  java-1.8.0-openjdk-1.8.0.382.b05-1.el7_9.x86_64
    
    
    
    //3-卸载后检测
    [root@freedomdjc jvm]# java -version
    -bash: /usr/bin/java: No such file or directory
    [root@freedomdjc jvm]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26

    在这里插入图片描述

    2.2 安装jdk-8u371-linux-x64.tar.gz和配置环境变量/etc/profile

    /etc/profile
    jdk-8u371-linux-x64.tar.gz
    在这里插入图片描述

    //1、手动下载后使用xftp等文件上传到/usr/local目录 或者右击复制jdk下载链接使用wget命令下载
    //上传jdk-8u371-linux-x64.tar.gz
    
    //2-解压jdk-8u371-linux-x64.tar.gz
    cd /usr/local
    tar zxvf  jdk-8u371-linux-x64.tar.gz
    
    
    //3-复制jdk到上一步创建的文件夹
    //-r表示递归复制jdk1.8.0_371文件夹所有文件到java文件夹中(如果java文件夹不存在,就会自动创建。
    cp -r ./jdk1.8.0_371/ /usr/local/java/
    
    
    //4-配置环境变量
    vim /etc/profile
    
    在末尾添加
    export JAVA_HOME=/usr/local/java
    export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
    export PATH=$PATH:${JAVA_HOME}/bin
    
    
    或者
    【我使用的是这个】
    export JAVA_HOME=/usr/local/jdk1.8.0_371
    export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
    export PATH=$PATH:${JAVA_HOME}/bin
    
    
    //5-使环境变量生效
    source /etc/profile
    
    //2023-11-17 00:09:13 补充
    重要:
    修改环境变量后,可能会导致执行其他命令时,出现类似-bash: chmod: command not found这样的问题,
    执行export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin即可。
    
    //6-检测java
    java -version
    
    [root@freedomdjc java]# java -version
    java version "1.8.0_371"
    Java(TM) SE Runtime Environment (build 1.8.0_371-b11)
    Java HotSpot(TM) 64-Bit Server VM (build 25.371-b11, mixed mode)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    2.3 安装maven及配置环境变量 /etc/profile

    /etc/profile
    /3.6.2/binaries/
    手动下载apache-maven-3.6.2-bin.tar.gz上传到/data/maven目录
    或者
    右击复制maven下载链接使用wget命令下载

    //1-建目录
    mkdir -p /data/maven
    //存放maven的settings.xml配置文件配置的
    ///data/maven/mavenData
    //见 //8-配置maven的settings.xml文件
    mkdir -p /data/maven/mavenData
    
    //2-使用wget命令直接下载
    wget https://archive.apache.org/dist/maven/maven-3/3.6.2/binaries/apache-maven-3.6.2-bin.tar.gz
    
    
    //3-解压 tar zxvf apache-maven-3.6.2-bin.tar.gz
    tar zxvf apache-maven-3.6.2-bin.tar.gz
    
    
    //4-配置maven环境变量
    vim  /etc/profile 或 vi  /etc/profile
    
    export M2_HOME=/data/maven/apache-maven-3.6.2
    export CLASSPATH=$CLASSPATH:$M2_HOME/lib
    export PATH=$PATH:$M2_HOME/bin
    
    //5-查看是否保存
    cat /etc/profile
    
    //6-刷新配置文件
    source /etc/profile
    
    //2023-11-17 00:09:13 补充
    重要:
    修改环境变量后,可能会导致执行其他命令时,出现类似-bash: chmod: command not found这样的问题,
    执行export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin即可。
    
    //7-检查maven版本
    mvn -v
    
    [root@freedomdjc conf]# mvn -v
    The JAVA_HOME environment variable is not defined correctly
    This environment variable is needed to run this program
    NB: JAVA_HOME should point to a JDK not a JRE
    [root@freedomdjc conf]# 
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42

    2.4 配置maven的settings.xml文件

    /data/maven/apache-maven-3.6.2/conf/settings.xml
    Maven官方镜像仓库与阿里云云效Maven

    2023-9-26 00:38:29
    仓库名称              public 
    阿里云仓库地址         https://maven.aliyun.com/repository/public
    阿里云仓库地址(老版)    https://maven.aliyun.com/nexus/content/groups/public
    源地址                central仓和jcenter仓的聚合仓
    
    详细见  
    https://developer.aliyun.com/mvn/guide
    https://developer.aliyun.com/mvn/guide
    https://developer.aliyun.com/mvn/guide
    https://developer.aliyun.com/mvn/guide
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    //8-配置maven的settings.xml文件
    //位于/data/maven/apache-maven-3.6.2/conf
    cd /data/maven/apache-maven-3.6.2/conf
    vim settings.xml
    
    
    
    //9-主要配置本地maven仓库和远程maven仓库
    
    /data/maven/mavenData
    
    
        
     
          nexus-aliyun
          Central
          Nexus aliyun
          http://maven.aliyun.com/nexus/content/groups/public
     
         
    
    
    //10-检测java和maven    2023-9-26 00:45:25 补充
    
    [root@freedomdjc java]# java -version
    java version "1.8.0_371"
    Java(TM) SE Runtime Environment (build 1.8.0_371-b11)
    Java HotSpot(TM) 64-Bit Server VM (build 25.371-b11, mixed mode)
    [root@freedomdjc java]# mvn -v
    Apache Maven 3.6.2 (40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-27T23:06:16+08:00)
    Maven home: /data/maven/apache-maven-3.6.2
    Java version: 1.8.0_371, vendor: Oracle Corporation, runtime: /usr/local/java/jre
    Default locale: en_US, platform encoding: UTF-8
    OS name: "linux", version: "3.10.0-1160.el7.x86_64", arch: "amd64", family: "unix"
    [root@freedomdjc java]# 
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36

    /etc/profile
    在这里插入图片描述

    三、参考

    Java开发环境的搭建与测试及相关问题的解决
    Maven官方镜像仓库与阿里云云效Maven
    Downloading Apache Maven 3.9.4
    JDK

  • 相关阅读:
    软件包管理—源码包管理—源码包与RPM包区别
    【MACOS(M1)编译Risc-v版OpenOCD】
    PIL中的P模式、P模式转为L模式
    【数据物语系列】 漫谈数据分布可视化分析
    NDT方法总结与公式推导
    电影院订票选座小程序|基于微信小程序的电影院购票系统设计与实现(源码+数据库+文档)
    Cy3-PEG-SH,Cy3-聚乙二醇-巯基/硫醇,Thiol/SH-PEG-Cy3
    Stable Diffusion 动画SD-Animatediff V2
    一篇可供参考的 K8S 落地实践经验
    【Kaggle比赛常用trick】K折交叉验证、TTA
  • 原文地址:https://blog.csdn.net/qyfx123456/article/details/133468909