zoukankan      html  css  js  c++  java
  • 环境变量和用户变量有什么区别?

    搭建编译环境时为什么有时候要设置环境变量,而有时又设置用户变量? 

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

    例如你要用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下,我说的的那些文件是系统自动生成的,我们可以手动更改他已达到我所说的效果。它们是在各自所属的用户登陆时自动运行的Windows下JAVA环境变量的设置祥解
    Windows下JAVA用到的环境变量主要有3个,JAVA_HOME、CLASSPATH、PATH。下面逐个分析。 
    JAVA_HOME指向的是JDK的安装路径,如x:JDK_1.4.2,在这路径下你应该能够找到bin、lib等目录。值得一提的是,JDK的安装路径可以选择任意磁盘目录,不过建议你放的目录层次浅一点,如果你放的目录很深,比如x:XXXXXXxxxxxXXXXxxxxXXXXxxxxXXXXxxx……
    那么,下面的步骤和以后的应用你都要受累了,呵呵。设置方法: 
    JAVA_HOME=x:JDK_1.4.2 
    PATH环境变量原来Windows里面就有,你只需修改一下,使他指向JDK的bin目录,这样你在控制台下面编译、执行程序时就不需要再键入一大串路径了。设置方法是保留原来的PATH的内容,并在其中加上%JAVA_HOME%in
    (注,如果你对DOS批处理不了解,你可能不明白%%引起来的内容是什么意思;其实这里是引用上一步设定好的环境变量JAVA_HOME,你写成x:JDK_1.4.2也是可以的;你可以打开一个控制台窗口,输入echo
    %JAVA_HOME%来看一下你的设置结果) : 
    PATH=%JAVA_HOME%in;%PATH% 
    同样,%PATH%是引用以前你设置的PATH环境变量,你照抄以前的值就行了。 
    CLASSPATH环境变量我放在最后面,是因为以后你出现的莫名其妙的怪问题80%以上都可能是由于CLASSPATH设置不对引起的,所以要加倍小心才行。 
    CLASSPATH=.;%JAVA_HOME%lib ools.jar 
    首先要注意的是最前面的".;",如果你看不清,我给你念念——句点反斜杠分号。这个是告诉JDK,搜索CLASS时先查找当前目录的CLASS文件——为什么这样搞,这是由于LINUX的安全机制引起的,LINUX用户很明白,WINDOWS用户就很难理解(因为WINDOWS默认的搜索顺序是先搜索当前目录的,再搜索系统目录的,再搜索PATH环境变量设定的)
    ,所以如果喜欢盘根究底的朋友不妨研究一下LINUX。 
    为什么CLASSPATH后面指定了tools.jar这个具体文件?不指定行不行?显然不行,行的话我还能这么罗索嘛!:) 
    这个是由java语言的import机制和jar机制决定的,你可以查资料解决。 

    呵呵,具体的设定方法: win2kxp用户右键点击我的电脑->属性->高级->环境变量,修改下面系统变量那个框里的值就行了。 
    win9x用户修改autoexec.bat文件,在其末尾加入: 
    set JAVA_HOME=x:JDK_1.4.2 
    set PATH=%JAVA_HOME%in;%PATH% 
    set CLASSPATH=.;%JAVA_HOME%lib ools.jar

    右键点我的电脑-属性-高级-环境变量-新建环境变量(有path的话可以直接双击,改变量值就可以了):  变量名:path  变量值(路径):E:java..(你安装java的名字)in
  • 相关阅读:
    Vasya and Endless Credits CodeForces
    Dreamoon and Strings CodeForces
    Online Meeting CodeForces
    数塔取数 基础dp
    1001 数组中和等于K的数对 1090 3个数和为0
    1091 线段的重叠
    51nod 最小周长
    走格子 51nod
    1289 大鱼吃小鱼
    POJ 1979 Red and Black
  • 原文地址:https://www.cnblogs.com/zhwl/p/3338294.html
Copyright © 2011-2022 走看看