java 环境变量,系统变量和用户变量的区别是什么?

2024-12-15 01:33:59
推荐回答(5个)
回答1:

环境变量分为系统环境变量和用户环境变量。
你所说的环境变量是指系统环境变量,对所有用户起作用
而用户环境变量只对当前用户起作用。

例如你要用java,那么你把java的bin目录加入到path变量下面,那么它就是系统环境变量,所用用户登陆,在命令行输入java都会有java的帮助信息出来。而如果你在某个用户的变量下面新建一个变量,那么它就只对这个用户有用,当你以其他用户登陆时这个变量就和不存在一样。

这个问题在linux下面就相对好理解一些,系统变量都在/etc/profile文件里面,而用户的变量则在~/.bash_profile(如果用的是bash的话),每个用户的用户目录对其他用户不可见。假设有a,b,c三个用户,你在a的变量文件中写入语句在屏幕上述出a,在b的输出b,c的什么都不输出,系统文件输出sys,那么当你用a用户登陆时,输出a;用户b登陆输出b,用户c则输出sys.

补充:
在windows下面用到少设置环境变量的时候很少,例如你想只用jdk而不想用jbuilder,那么你就得自己设置jdk的path,classpath等环境变量。
在linux下,我说的的那些文件是系统自动生成的,我们可以手动更改他已达到我所说的效果。它们是在各自所属的用户登陆时自动运行的

回答2:

系统变量是对本电脑所有用户的起作用的变量,用户变量是只对当前用户有效的变量,java的环境变量可以配置在系统变量上,也可以配置在用户变量上,也就是说java的环境变量是用来配置在系统变量或用户变量的一段路径,和其余两个变量没有可比性。

回答3:

简单的说:
系统变量:不管以哪个用户名登陆到计算机都能使用;
用户变量:只能以设置变量时的用户名登陆才能使用。
这个是比较通俗的说法,希望你能明白,谢谢!

回答4:

一个是当前用户使用,你用其它用户登陆,这个环境变量就不起作用了。
系统变量,是对所有用户都可使用的。

回答5:

系统变量是大家公用的,比如你的登陆是默认的Administrator,你如果在里边建立一个叫classpath的用户变量,那么这个变量只能是你Administrator的,但如果你建立一个叫classpath的系统变量,那么这个变量将会是大家公共的,任何用户都可以使用的,
比如你建立了一个新的用户叫:Tuz,那么这个用户也可以使用Administrator建立的那个classpath变量