classpath和环境变量

环境变量编辑

环境变量,是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。

环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等

1主要作用

设置参数

环境变量相当于给系统或用户应用程序设置的一些参数,具体起什么作用这当然和具体的环境变量相关。比如path,是告诉系统,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到哪些目录下去寻找;再如tc或vc++中,set
include=path1;path2; 是告诉编译程序到哪里去找.h类型的文件;当然不仅仅是指定什么路径,还有其它的作用的,如set dircmd=/4 设置一个环境变量的作用是在使用dir命令时会把/4作为缺省的参数添加到你的dir命令之后,就像你的每个命令都加了/4参数,它实际上是给命令解释程序command设置的一个环境变量,并且是给dir这个内部命令设置的。

DWORD GetEnvironmentVariable(LPCSTR lpName, LPSTR lpBuffer, DWORD dSize),参数lpName是你要求查询的环境变量的名,lpBuffer是返回你所指定的环境变量的值的,dSize是告诉这个函数lpBuffer可以存放多少个字节。

分析本地故障时原因很可能就是因为环境变量中的默认路径被删除的结果,默认路径一经设置,当前系统如有程序运行时需要某些DLL或EXE文件,以及Active控件时就会到所有默认路径中去查找,如果在这些目录中查找到相应的程序则自动加载,查找不到则报告缺少某某文件的错误信息

软件共用

很多朋友会在自己的计算机上安装双系统,例如C盘安装Windows XP,D盘安装Windows 7。可是某些软件往往只在Windows XP系统中安装,Windows
7系统中是无法正常使用的,比较麻烦却有效的方法是再安装一遍。当我们了解了环境变量中的用途后就可以很好解决双系统的软件共用问题。

系统运行

为什么在Windows XP中安装了的软件在Windows 7下无法运行呢(绿色软件除外)?原因是安装软件时往往须要向系统目录中复制某些文件,而使用另外一个系统时会由于缺少这些文件而无法运行。因此,我们可以通过设置环境变量的方法来解决这个问题。

2常见环境变量

WINDOWS系统

%ALLUSERSPROFILE% 局部 返回所有“用户配置文件”的位置。

%APPDATA% 局部 返回默认情况应用程序存储数据的位置。

%CD% 局部 返回当前目录字符串。

%CMDCMDLINE% 局部 返回用来启动当前的 Cmd.exe 的准确命令行。

%CMDEXTVERSION% 系统 返回当前的“命令处理程序扩展”的版本号。

%COMPUTERNAME% 系统 返回计算机的名称。

%COMSPEC% 系统 返回命令行解释器可执行程序的准确路径。

%DATE% 系统 返回当前日期。使用与 date /t命令相同的格式。由 Cmd.exe 生成。有关 date
命令的详细信息,请参阅 Date。

%ERRORLEVEL% 系统 返回使用过的命令错误代码。通常用非零值表示错误。

%HOMEDRIVE% 系统 返回连接到用户主目录的本地工作站驱动器号。基于主目录值的设置。用户主目录是在“本地用户和组”中指定的。

%HOMEPATH% 系统 返回用户主目录的完整路径。基于主目录值的设置。用户主目录是在“本地用户和组”中指定的。

%HOMESHARE% 系统 返回用户的共享主目录的网络路径。基于主目录值的设置。用户主目录是在“本地用户和组”中指定的。

%LOGONSEVER% 局部 返回验证当前登录会话的域控制器的名称。

%NUMBER_OF_PROCESSORS% 系统 指定安装在计算机上的处理器的数目。

%OS% 系统 返回操作系统的名称。Windows 2000 将操作系统显示为 Windows_NT。

%PATH% 系统 指定可执行文件的搜索路径。

%PATHEXT% 系统 返回操作系统认为可执行的文件扩展名的列表。

%PROCESSOR_ARCHITECTURE% 系统 返回处理器的芯片体系结构。值: x86,IA64。

%PROCESSOR_IDENTIFIER% 系统 返回处理器说明。

%PROCESSOR_LEVEL% 系统 返回计算机上安装的处理器的型号。

%PROCESSOR_REVISION% 系统 返回处理器修订号的系统变量

%PROMPT% 局部 返回当前解释程序命令提示符设置。由 Cmd.exe 生成。

%RANDOM% 系统 返回 0 到 32767 之间的任意十进制数字。由 Cmd.exe 生成。

%SYSTEMDRIVE% 系统 返回包含 Windows XP 根目录(即系统根目录)的驱动器

%SYSTEMROOT% 系统 返回 Windows XP 根目录的位置。

%TEMP% and %TMP% 系统和用户 返回对当前登录用户可用的应用程序所使用的默认临时目录。有些应用程序需要
TEMP,而其它应用程序则需要 TMP。

%TIME% 系统 返回当前时间。使用与 time /t 命令相同的格式。由 Cmd.exe 生成。有关 time 命令的详细信息,请参阅 Time。

%USERDOMAIN% 局部 返回包含用户帐户的域的名称。

%USERNAME% 局部 返回当前登录的用户的名称。

%UserProfile% 局部 返回当前用户的配置文件的位置。

%WINDIR% 系统 返回操作系统目录的位置。

Linux系统

shell环境依赖于多个文件的设置。当shell被调用时,它从两个初始文件读取命令。/etc/profile包含了系统变量,它由系统管理员维护,由系统管理员设置本地系统变量和特殊命令。普通用户的启动信息文件($HOME/.bash_project)由各用户自己维护,该文件可以被修改以实现任何特定的系统初始化

只有在特定的情况下才读取profile文件,确切的说是在用户登陆的时候。当运行shell脚本或subshell以后,就无须再读profile.虽然所有profile都可选的,但是基本上所有系统都有/etc/profile.

如果定义了变量ENV且已经传递到环境中,则所有的bash shell都要读取并调用由这个变量制定的文件所包含的命令。这个文件用来定义所有bash
shell的特征,而不仅仅是登陆到shell。这个文件的典型的名字是$HOME/,bashrc。

当用(系统管理员)新建用户时,.bash_profile、bashrc和其他公共的环境文件模板将复制到/etc/skel这个目录下面。可以编辑这些初始化设置,也可以在此目录下添加附加的文件。

Example:

一个典型的系统profile(/etc/profile):

PATH=$PATH:/usr/qa/tools/bin

ENV==$HOME/.bashrc

ORACLE_HOME=/dbs/oracle

ORACLE_SID=qadb

Export PATH ENV ORACLE_HOME ORCAL_SID

Cat /etc/motd

一个典型的用户profile(.bashrc)

PATH=$PATH:$HOME/bin

TEAM=uvt1224 export TERM

sttyintr \^C

cal

mesg n

一个典型的用户 bashrc file (.bashrc):

alias dir=ls lf=‘ls -FC‘

PSI=‘$PWS[!]>‘

set -o vi

别名和其他bash专用的定义应该放在.bashrc文件(不应在.bash_profile) 中定义;否则会导致找不到某些命令

应该记住profile文件和.bashrc文件的区别:两个profile都只在系统启动时被读取一次,而.bashrc在系统启动和每次调用shell的时候都要被读取。

环境变量编辑

环境变量,是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。

环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。

目录


1主要作用

? 设置参数
? 软件共用
? 系统运行

2常见环境变量

? WINDOWS系统
? Linux系统

3设置方法


4编辑方法

1主要作用

设置参数

环境变量相当于给系统或用户应用程序设置的一些参数,具体起什么作用这当然和具体的环境变量相关。比如path,是告诉系统,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到哪些目录下去寻找;再如tc或vc++中,set
include=path1;path2; 是告诉编译程序到哪里去找.h类型的文件;当然不仅仅是指定什么路径,还有其它的作用的,如set dircmd=/4 设置一个环境变量的作用是在使用dir命令时会把/4作为缺省的参数添加到你的dir命令之后,就像你的每个命令都加了/4参数,它实际上是给命令解释程序command设置的一个环境变量,并且是给dir这个内部命令设置的。

DWORD GetEnvironmentVariable(LPCSTR lpName, LPSTR lpBuffer, DWORD dSize),参数lpName是你要求查询的环境变量的名,lpBuffer是返回你所指定的环境变量的值的,dSize是告诉这个函数lpBuffer可以存放多少个字节。

分析本地故障时原因很可能就是因为环境变量中的默认路径被删除的结果,默认路径一经设置,当前系统如有程序运行时需要某些DLL或EXE文件,以及Active控件时就会到所有默认路径中去查找,如果在这些目录中查找到相应的程序则自动加载,查找不到则报告缺少某某文件的错误信息

软件共用

很多朋友会在自己的计算机上安装双系统,例如C盘安装Windows XP,D盘安装Windows 7。可是某些软件往往只在Windows XP系统中安装,Windows
7系统中是无法正常使用的,比较麻烦却有效的方法是再安装一遍。当我们了解了环境变量中的用途后就可以很好解决双系统的软件共用问题。

系统运行

为什么在Windows XP中安装了的软件在Windows 7下无法运行呢(绿色软件除外)?原因是安装软件时往往须要向系统目录中复制某些文件,而使用另外一个系统时会由于缺少这些文件而无法运行。因此,我们可以通过设置环境变量的方法来解决这个问题

2常见环境变量

WINDOWS系统

%ALLUSERSPROFILE% 局部 返回所有“用户配置文件”的位置。

%APPDATA% 局部 返回默认情况应用程序存储数据的位置。

%CD% 局部 返回当前目录字符串。

%CMDCMDLINE% 局部 返回用来启动当前的 Cmd.exe 的准确命令行。

%CMDEXTVERSION% 系统 返回当前的“命令处理程序扩展”的版本号。

%COMPUTERNAME% 系统 返回计算机的名称。

%COMSPEC% 系统 返回命令行解释器可执行程序的准确路径。

%DATE% 系统 返回当前日期。使用与 date /t命令相同的格式。由 Cmd.exe 生成。有关 date
命令的详细信息,请参阅 Date。

%ERRORLEVEL% 系统 返回使用过的命令错误代码。通常用非零值表示错误。

%HOMEDRIVE% 系统 返回连接到用户主目录的本地工作站驱动器号。基于主目录值的设置。用户主目录是在“本地用户和组”中指定的。

%HOMEPATH% 系统 返回用户主目录的完整路径。基于主目录值的设置。用户主目录是在“本地用户和组”中指定的。

%HOMESHARE% 系统 返回用户的共享主目录的网络路径。基于主目录值的设置。用户主目录是在“本地用户和组”中指定的。

%LOGONSEVER% 局部 返回验证当前登录会话的域控制器的名称。

%NUMBER_OF_PROCESSORS% 系统 指定安装在计算机上的处理器的数目。

%OS% 系统 返回操作系统的名称。Windows 2000 将操作系统显示为 Windows_NT。

%PATH% 系统 指定可执行文件的搜索路径。

%PATHEXT% 系统 返回操作系统认为可执行的文件扩展名的列表。

%PROCESSOR_ARCHITECTURE% 系统 返回处理器的芯片体系结构。值: x86,IA64。

%PROCESSOR_IDENTIFIER% 系统 返回处理器说明。

%PROCESSOR_LEVEL% 系统 返回计算机上安装的处理器的型号。

%PROCESSOR_REVISION% 系统 返回处理器修订号的系统变量

%PROMPT% 局部 返回当前解释程序命令提示符设置。由 Cmd.exe 生成。

%RANDOM% 系统 返回 0 到 32767 之间的任意十进制数字。由 Cmd.exe 生成。

%SYSTEMDRIVE% 系统 返回包含 Windows XP 根目录(即系统根目录)的驱动器

%SYSTEMROOT% 系统 返回 Windows XP 根目录的位置。

%TEMP% and %TMP% 系统和用户 返回对当前登录用户可用的应用程序所使用的默认临时目录。有些应用程序需要
TEMP,而其它应用程序则需要 TMP。

%TIME% 系统 返回当前时间。使用与 time /t 命令相同的格式。由 Cmd.exe 生成。有关 time 命令的详细信息,请参阅 Time。

%USERDOMAIN% 局部 返回包含用户帐户的域的名称。

%USERNAME% 局部 返回当前登录的用户的名称。

%UserProfile% 局部 返回当前用户的配置文件的位置。

%WINDIR% 系统 返回操作系统目录的位置。

Linux系统

shell环境依赖于多个文件的设置。当shell被调用时,它从两个初始文件读取命令。/etc/profile包含了系统变量,它由系统管理员维护,由系统管理员设置本地系统变量和特殊命令。普通用户的启动信息文件($HOME/.bash_project)由各用户自己维护,该文件可以被修改以实现任何特定的系统初始化

只有在特定的情况下才读取profile文件,确切的说是在用户登陆的时候。当运行shell脚本或subshell以后,就无须再读profile.虽然所有profile都可选的,但是基本上所有系统都有/etc/profile.

如果定义了变量ENV且已经传递到环境中,则所有的bash shell都要读取并调用由这个变量制定的文件所包含的命令。这个文件用来定义所有bash
shell的特征,而不仅仅是登陆到shell。这个文件的典型的名字是$HOME/,bashrc。

当用(系统管理员)新建用户时,.bash_profile、bashrc和其他公共的环境文件模板将复制到/etc/skel这个目录下面。可以编辑这些初始化设置,也可以在此目录下添加附加的文件。

Example:

一个典型的系统profile(/etc/profile):

PATH=$PATH:/usr/qa/tools/bin

ENV==$HOME/.bashrc

ORACLE_HOME=/dbs/oracle

ORACLE_SID=qadb

Export PATH ENV ORACLE_HOME ORCAL_SID

Cat /etc/motd

一个典型的用户profile(.bashrc)

PATH=$PATH:$HOME/bin

TEAM=uvt1224 export TERM

sttyintr \^C

cal

mesg n

一个典型的用户 bashrc file (.bashrc):

alias dir=ls lf=‘ls -FC‘

PSI=‘$PWS[!]>‘

set -o vi

别名和其他bash专用的定义应该放在.bashrc文件(不应在.bash_profile) 中定义;否则会导致找不到某些命令

应该记住profile文件和.bashrc文件的区别:两个profile都只在系统启动时被读取一次,而.bashrc在系统启动和每次调用shell的时候都要被读取。

3设置方法

在windows操作系统中可以通过我的电脑-〉系统属性-〉高级系统设置->环境变量,来设置系统的环境变量,然而在此设置的环境变量是否在注册表中具有对应的项呢?答案是肯定的。而在.net
中提供了一个类来获取系统的环境变量及其值。

环境变量分为两类:用户变量与系统变量,在注册表中都有对应的项。

其中用户变量所在位置:

HKEY_CURRENT_USER\Environment;

系统变量所在位置为:\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001

\Control\Session Manager\Environment。

另外也可以右击我的电脑——高级系统设置——环境变量——在系统变量里有path选项——双击打开——在原有变量的基础上添加英文状态下的分号——然后将路径名输入即可。(切记,不要删除原先的系统变量,只要用分号隔开,然后添加,最后也要加上分号)

4编辑方法

在命令行中对环境变量进行编辑的方法

查看当前可用的所有环境变量(=系统变量+用户变量)

set

查看某个环境变量,如PATH

set PATH

添加环境变量,如xxx=aa

set xxx=aa

将环境变量(如xxx)的值置为空

set xxx=

在某个环境变量(如PATH)后添加新的值(如d:\xxx)

set PATH=%PATH%;d:\xxx

(注:在dos窗口中以命令行方式对环境变量的操作只对当前窗口的应用有效)

在没有设置环境变量之前,我们可以通过直接在应用程序中加带相关信息来运行我们

的程序。比如,我们可以这样开始运行一个java程序:

C:\jdk1.3.1\bin\java -jar C:\windows\desktop\myfiles\SimpleColorConverter.jar

这样肯定没有错误,每次我们不得不敲上java应用程序的全路径和class文件的全路径,我们

写一次没问题,两次不觉得长,三次也不觉得累,可是如果我们每次都要重复的敲上这一堆路径的话,

那真的将会是一场噩梦。那么,我们怎么做才能够减轻我们的输入量呢?

一、简介:

环境变量是操作系统、应用程序、脚本程序等等的指明灯,能够告诉他们需要的资源在哪里。大多数的

系统都有一些预先设置好的环境变量,当然,我们也可以增加自己的环境变量。

为了看看当前系统的环境变量,我们可以用如下的命令:

在Linux/Unix系统上,在shell命令符输入 env ,然后回车

在Windows系统中,在DOS窗口提示符输入 set ,然后回车

这样,我们就可以看到系统当中的所有环境变量,如果我们想看看单个变量的值呢?

在Linux/Unix系统上,在shell命令符输入 echo $变量名 ,然后回车

在Windows系统中,在DOS窗口提示符输入 set 变量 或者 echo %变量%,然后回车

如果要设置一个环境变量,可以用下面的命令:

在Linux/Unix系统上,在shell命令符输入 export 变量名="变量值" ,然后回车

在Windows系统中,在DOS窗口提示符输入 set 变量名="变量值" ,然后回车

这样,就设置好了。path和classpath环境变量的值都是一些有顺序的目录列表。告诉系统或者应用程序

到哪里去寻找它们需要的资源。这个目录列表是由一系列的分隔符分开的,Linux/Unix系统下分隔符是冒号“:”

windows系统中是分号“;”。如果,我们想在某个已经存在的环境变量值下加一些自己的值的话,可以这样:

Linux/Unix系统下: export CLASSPATH=$CLASSPATH:/path/to/program

Windows系统下: set CLASSPATH = %CLASSPATH%;c:\path\to\program

二、设置Java环境

要想方便的开发和运行Java应用程序,我们需要设置两个环境变量,一个path一个classpath。

设置好path变量,使得我们能够在系统中的任何地方运行java应用程序,比如javac、java、javah等等

这就要找到我们安装JDK的目录,比如我们的JDK安装在c:\jdk1.3\目录下,那么在c:\jdk1.3\bin目录

下就是我们常用的java应用程序,我们就需要把c:\jdk1.3\bin这个目录加到path环境变量里面。

classpath环境变量,是当我们在开发java程序时需要引用别人写好的类时,要让java解释器知道到哪里

去找这个类。通常,sun为我们提供了一些额外的丰富的类包,一个是dt.jar,一个是tools.jar,这两个jar包

都位于c:\jdk1.3\lib目录下,所以通常我们都会把这两个jar包加到我们的classpath环境变量中 (对这点我心存怀疑,这2个包应该是不用加也行的)

set classpath=.;c:\jdk1.3\lib\tools.jar;c:\jdk1.3\lib\dt.jar。 注意对于jar包,在classpath中

需要跟上完整地文件路径,而不能仅仅跟一个目录。第一个路径的点“.”,代表当前目录,这样当我们运行java AClass

的时候,系统就会先在当前目录寻找AClass文件了。

时间: 2024-08-07 08:37:10

classpath和环境变量的相关文章

classpath和环境变量设置(转)

classpath和环境变量设置(转) 在没有设置环境变量之前,我们可以通过直接在应用程序中加带相关信息来运行我们 的程序.比如,我们可以这样开始运行一个java程序: C:\jdk1.3.1\bin\java -jar C:\windows\desktop\myfiles\SimpleColorConverter.jar 这样肯定没有错误,每次我们不得不敲上java应用程序的全路径和class文件的全路径,我们 写一次没问题,两次不觉得长,三次也不觉得累,可是如果我们每次都要重复的敲上这一堆路

Linux中PATH、CLASSPATH等环境变量配置格式详解

代码格式详解 看几个例子, 1 #set java environment 2 export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_79 3 export CLASSPATH=.:${JAVA_HOME}/lib/tools.jar:${JAVA_HOME}/lib/dt.jar 4 export PATH=$JAVA_HOME/bin:$PATH 5 6 #set hadoop environment 7 export HADOOP_HOME=/opt/hadoop-

java环境变量 Path 与CLASSPATH

1.Windows操作系统根据Path环境变量来查找命令,Linux操作系统则根据PATH环境变量来查找命令 因为Windows操作系统不区分大小写,设置Path和PATH并没有区别,而Linux系统是区分大小写的设置Path和PATH是有区别的,因此我们只需要设置PATH变量即可 2.CLASSPATH环境变量定位类: 1.       JDK 1.5以上的版本完全可以不用设置CLASSPATH环境变量 2.       1.4以前的JDK版本需要在CLASSPATH环境变量中添加一点(.)用

系统环境变量和用户环境变量

环境变量分为系统环境变量和用户环境变量. 你所说的环境变量是指系统环境变量,对所有用户起作用 而用户环境变量只对当前用户起作用. 例如你要用java,那么你把java的bin目录加入到path变量下面,那么它就是系统环境变量,所用用户登陆,在命令行输入java都会有java的帮助信息出来.而如果你在某个用户的变量下面新建一个变量,那么它就只对这个用户有用,当你以其他用户登陆时这个变量就和不存在一样. 这个问题在linux下面就相对好理解一些,系统变量都在/etc/profile文件里面,而用户的

Java 环境变量配置

本人新手+菜鸟一枚,如果有不准确或者错误的地方希望大家指出,这是我第一篇博客,可能很简单,但希望能帮到新手,更希望在这个平台跟大家共同进步成长. 每一个java初学者在开发之前都需要下载安装JDK(java开发工具包),配置环境变量,这是基础,这是前提,这保证了我们能进行接下来的学习开发.   至于为什么要配置环境变量,简单的说就是用来告诉操作系统编译器运行的路径和生成的类路径,这样java源程序才可以编译和运行.可能我说的不准确不合理,大家可以自己去百度,这没什么. 可能初学者容易忘记如何配置

windows配置java环境变量

1.点击电脑右键属性 2.找到环境变量 增加名字为 java_home 的环境变量 值为java的安装地址 增加名字为 classpath 的环境变量 值为  ".;%java_home%\bin" 修改名字为 path的环境变量 在最后加入 ";%java_home%\bin"

【Java环境变量的配置问题】

首先是JVM.JRE.JDK三者之间的关系: java的跨平台性依赖于Java虚拟机:jvm(Java Virtual Machine),而jre(Java Runtime Environment,中文名称作Java运行时环境)则包括了jvm以及java程序所需的核心类库等.JDK(Java Development 'sKit,Java开发工具包)是给java开发人员使用的,其中包含了java的开发工具(javac.Java.javadoc等),也包括了jre,所以安装了JDK,就不用再单独安装

Win10操作系统下,Java环境变量的配置

一:首先要下载并安装JDK (官方下载网址:http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html) 二:配置环境变量及class,path的值 找到单击右键->属性,进入下图页面: 点击"高级系统设置",进入下图页面: 点击"环境变量",如下图: 点击“新建”,然后按下图所示,设置一个名为“JAVA_HOME"的变量名和变量值.(变量值是你自己安装J

java4android【3】java 环境变量 jre

path环境变量配置的目的 classpath环境变量配置的mud java的jre提供了哪些支持 1: path环境变量是为了执行java.exe 和javac.exe命令的时候,可以找到这两个文件.java一般主要用的就是这两个执行文件.之前path环境变量配置的值就是jdk安装的路径. 2: classpath环境变量是位了执行命令的时候,能够找到类文件和源文件的位置.比如 执行 java Hello.class,和javac Hello.java(后面的扩展名写出来是为了区分类文件和源文