Java开发环境搭建-环境变量配置

环境变量的一些要点

为什么要使用

总结了一下以往的工作,有以下场景会涉及到环境变量的配置

安装一些软件的时候会涉及到环境变量

比如安装jdk、安装maven,这种情况下我们会将命令所在的路径添加到PATH环境变量中。这样,当我们在终端想要执行某个命令的时候,直接写命令的名字就可以了,而不用带上全路径。
因为,当我们在终端执行某一个命令的时候,操作系统会到PATH环境变量所定义的路径列表中,逐个目录寻找是否存在对应的命令,如果能找到则会执行命令,如果没有找到则会报错,下面演示一下。

首先查看一下系统的PATH环境变量的内容,可以看到PATH地址列表中包含了maven命令的目录/usr/local/apache-maven-3.9.9/bin

[root@master ~]# echo $PATH
/usr/local/apache-maven-3.9.9/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

我们再执行一下mvn命令,可以看到系统找到了mvn命令,并且执行了。

[root@master ~]# mvn -version
Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937)
Maven home: /usr/local/apache-maven-3.9.9
Java version: 1.8.0_412, vendor: Red Hat, Inc., runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-1160.119.1.el7.x86_64", arch: "amd64", family: "unix"

系统遇到mvn这个命令,会获取PATH环境变量对应的值,然后再/usr/local/apache-maven-3.9.9/bin找到了对应的mvn命令。到/usr/local/apache-maven-3.9.9/bin下,看一下是否有mvn命令,确实在这里。
在这里插入图片描述

我们将maven的路径从PATH中去掉,再试试。修改~/.bashrc文件,将红色区域的两行注释掉
在这里插入图片描述

修改完成后,新打开一个终端,再次查看PATH环境变量的值。可以看到maven的目录已经被移除了

[root@master ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

这时,我再执行mvn命令,就会提示找不到命令了

[root@master ~]# mvn -version
bash: mvn: command not found...

在Docker中的应用

创建容器,或者定义Dockerfile的时候涉及到为容器定义环境变量
例如:

FROM centos
# 为容器定义环境变量
ENV name Docker
# 打印名称为name的环境变量
# CMD echo "hello $name"
# 容器启时输出名称为name的环境变量
ENTRYPOINT [ "/bin/bash","-c","echo hello $name" ]

作用域

分为两种,一种使用户变量,另一种使系统变量。用户变量只针对当前登录用户有效,其他用户是看不到也无法使用的;而系统变量是对所有用户都可见,并且能够使用的。

环境变量的引用方式

在windows系统中使用%环境变量名称%的格式,在linux系统中使用$环境变量名称的方式引用。

拼接方式

当环境变量有多个值的时候,需要使用符号分割。
windows系统下使用;分割
在这里插入图片描述

Linux系统下使用:分割
在这里插入图片描述

如何配置

在实际工作中,开发环境往往使用的是Windows系统,测试和正式环境使用的是Linux系统。这两种场景都会涉及到环境变量的配置,下面分别演示一下配置过程。

Windows系统

以Maven环境变量配置为例
鼠标右键点击此电脑,选择“属性”
在这里插入图片描述

点击“高级系统设置”
在这里插入图片描述

点击“环境变量”
在这里插入图片描述

点击“新建”,创建系统环境变量。变量名为M2_HOME(名称可以随意起,建议使用M2_HOME),变量值就是上一步解压后的目录。

用户变量和系统变量的区别:
1、用户环境变量只对当前登录用户有效,也就是说是当前用户独享的。在A用户下定义的用户变量,B用户登录到系统是看不到的也用不了。
2、系统变量对所有用户都生效,系统的所有用户都能够使用系统变量。
在这里插入图片描述

配置完成后,点击确定按钮。返回上一个窗口,然后选择"Path"系统变量,点击“编辑”按钮
在这里插入图片描述

在弹出的窗口中,点击“新建”按钮,填入如下内容%M2_HOME%\bin,然后一路确定,直到所有的窗口关闭。

这里的%M2_HOME%是对名称为M2_HOME的环境变量值的引用,%M2_HOME%\bin等价于C:\Program Files\apache-maven-3.6.3\bin

验证环境变量是否配置成功
打开命令窗口,执行echo %M2_HOME%、echo %PATH%,如果能够正确输出我们配置的内容,就说明设置成功了
在这里插入图片描述

Linux系统

linux系统有多种方式配置环境变量,逐一给大家介绍一下

export方式

作用域:当前用户
临时改变只能在当前的终端窗口有效,当前窗口关闭后就恢复原有的path配置
执行如下命令:export PATH=/usr/local/mongodb/bin:$PATH 。这行命令的含义是为PATH环境变量追加一个路径/usr/local/mongodb/bin
这种方式适合某次临时与操作系统的交互中使用,比如我们使用Jenkins执行某个job的时候,需要执行一段shell脚本,其中涉及到环境变量的配置,我只希望在这次job执行的过程中使用某个特定的环境变量的值,而不要影响到系统本身的环境,这时就适合使用这种方式。类似下面这种情况
在这里插入图片描述

修改.bashrc文件

作用域:当前用户
配置方式:

# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi
#定义m2_home
export m2_home=/usr/local/apache-maven-3.9.9
#追加到PATH环境变量
export PATH=$m2_home/bin:$PATH

生效方式:新打开一个终端窗口

修改/etc/profile文件

作用域:所有用户
配置方式:同.bashrc
生效方式:执行 source /etc/profile命令

修改~/.bash_profile文件

作用域:当前用户
配置方式:同.bashrc
生效方式:执行 source /etc/profile命令

修改/etc/environmen文件

作用域:所有用户
配置方式:同.bashrc
生效方式:需要重启操作系统

如何验证

可以使用命令在终端打印对应的环境变量,来验证配置是否生效。
windows系统下,使用echo %PATH%;
Linux系统下使用echo $PATH

总结

以上就是环境变量的要点及配置方式,伙伴们可以根据特性选择适合的配置方式,配置完成后要注意别忘了进行生效操作。环境变量是一个比较重要的概念,在以后的开发工作中会经常用到,在此总结一下。

  • 20
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值