java中的 classpath有什么用,我配完环境,没设置这个变量,程序也能运行啊! 求大神详细解释一下!

java中的 classpath有什么用,我配完环境,没设置这个变量,程序也能运行啊! 求大神详细解释一下!,第1张

classpath是java环境变量路径,它的作用其实就是设定java开始import包时所需要的路径

当你在进行java工程是会导入许多包,如:import javautil。举例说明,如果import javautil这个包在C盘的JDK目录下,那么就要把"C:\JDK"设到classpath里面去。当你在import javautil时,这句语句就会去找寻classpath下是否有javautil存在,如果没有就会报错。

与C语言进行比较的话,它的作用可类似于include。

没设置classpath就能跑程序的原因是安装jdk时会把java,javaw等放到system32目录去,jre也会有一些在注册表里,所以可以运行java,但不能用javac(因为它是java编译器,在jdk里),eclipse会自动找到jdk的home,所以才可以用编译和运行,IDE基本都不用配环境变量,不过离开了IDE就无法在cmd里javac

设置环境变量

在java 中需要设置三个环境变量(15之后不用再设置classpath了,但个人强烈建议继续设置以保证向下兼用问题)

JDK安装完成之后我们来设置环境变量:右击“我的电脑”,选择“属性”,选择“高级”标签,进入环境变量设置,分别设置如下三个环境变量:

(1)配置path变量:

为什么要配置path变量?因为电脑系统将根据该变量的值找到java编程中需要的一些程序,比如javacexe、javaexe、javahexe等等,其中javacexe程序是用于编译java源代码,javaexe程序是用于执行后缀为class的代码。

如何配置path变量?

path变量一般电脑系统都已经创建好了,所以不用新建该变量,只需在系统变量里选中到path变量,点击“选择” ->“编辑",需要注意的是,不要随便删除方框里原有的其他path值,而是先在那一大串值之后,添加一个分号,再把C:\Program Files\Java\jdk150_17\bin填上去。下面列出其键值对:

变量名: PATH(不区分大小写但建议使用大写)

变量值: C:\Program Files\Java\jdk150_17\bin

(2)配置classpath变量:

为什么要配置classpath变量?配置classpath变量,才能使得java解释器知道到哪里去找标准类库,这些标准类库是别人已经写好了的,我们只管使用。比如我们常用到javalang包中的类,在配置classpath变量后被设为默认导入,所以在写程序时就不用import这个包了。那么这些标准类库在哪呢?在以JDK的lib目录下以jar为后缀的文件中:一个是dtjar,一个是toolsjar,这两个jar包都位于C:/jdk160/lib目录下,所以通常我们都会把这两个jar包加到我们的classpath环境变量的值为:; C:\Program Files\Java\jdk150_17\\lib\toolsjar; C:\Program Files\Java\jdk150_17\\lib\dtjar;

如何配置classpath变量?

在系统环境变量那一栏中点击新建classpath ,具体过程省略,下面只列出其键值对:

变量名: CLASSPATH

变量值: ;%JAVA_HOME%\lib\toolsjar;%JAVA_HOME%\lib\dtjar;

(注意,CLASSPATH最前面是有个 “”的,表示当前目录。用两个%包围JAVA_HOME这个变量的意思是引用变量的值,当然如果你不想这样做,也可以这样配置classpath的值为:;%JAVA_HOME%\lib\toolsjar;%JAVA_HOME%\lib\dtjar; 也就是用JAVA_HOME变量的值替换%JAVA_HOME%);

(3)配置JAVA_HOME变量:

为什么要配置classpath环境变量?一是为了方便引用,比如,JDK安装在C:\Program Files\Java\jdk150_17目录里,则设置JAVA_HOME为该目录路径, 那么以后要使用这个路径的时候, 只需输入%JAVA_HOME%即可, 避免每次引用都输入很长的路径串; 二则是归一原则, 当JDK路径改变的时候, 仅需更改JAVA_HOME的变量值即可, 否则,就要更改任何用绝对路径引用JDK目录的文档, 要是万一没有改全, 某个程序找不到JDK, 后果是可想而知的----系统崩溃! 三则是第三方软件会引用约定好的JAVA_HOME变量, 不然, 你不能正常使用该软件。

如何配置JAVA_HOME变量?

在系统环境变量那一栏中点击新建JAVA_HOME (JAVA_HOME指向的是JDK的安装路径),变量的值实际上是JDK安装路径的根目录。具体过程省略,下面只列出其键值对:

变量名: JAVA_HOME

变量值:C:\Program Files\Java\jdk150_17

测试JDK是否安装成功

在运行中输入cmd

然后输入java –version

看看是否能显示出您所配置的java版本

首先得了解 *** 作系统中的环境变量

环境变量

环境变量相对于给系统或用户应用程序设置的一些变量, 具体起什么作用这当然和具体的环境变量相关 象path, 是告诉系统, 当要求系统运行一个程序而没有告诉它程序所在的完整路径时, 系统除了在当前目录下面寻找此程序外, 还应到那些目录下去找; 再象tc或bc++中, 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可以存放多少个字节

其次就是你的问题

Windows下JAVA用到的环境变量主要有3个,JAVA_HOME、CLASSPATH、PATH。下面逐个分析。

JAVA_HOME指向的是JDK的安装路径,如x:\JDK_142,在这路径下你应该能够找到bin、lib等目录。值得一提的是,JDK的安装路径可以选择任意磁盘目录,不过建议你放的目录层次浅一点,如果你放的目录很深,比如x:\XXXXXX\xxxxx\XXXX\xxxx\XXXX\xxxx\XXXX\xxx……

那么,下面的步骤和以后的应用你都要受累了,呵呵。设置方法:

JAVA_HOME=x:\JDK_142

PATH环境变量原来Windows里面就有,你只需修改一下,使他指向JDK的bin目录,这样你在控制台下面编译、执行程序时就不需要再键入一大串路径了。设置方法是保留原来的PATH的内容,并在其中加上%JAVA_HOME%\bin

(注,如果你对DOS批处理不了解,你可能不明白%%引起来的内容是什么意思;其实这里是引用上一步设定好的环境变量JAVA_HOME,你写成x:\JDK_142也是可以的;你可以打开一个控制台窗口,输入echo

%JAVA_HOME%来看一下你的设置结果) :

PATH=%JAVA_HOME%\bin;%PATH%

同样,%PATH%是引用以前你设置的PATH环境变量,你照抄以前的值就行了。

CLASSPATH环境变量我放在最后面,是因为以后你出现的莫名其妙的怪问题80%以上都可能是由于CLASSPATH设置不对引起的,所以要加倍小心才行。

CLASSPATH=\;%JAVA_HOME%\lib\toolsjar

首先要注意的是最前面的"\;",如果你看不清,我给你念念——句点反斜杠分号。这个是告诉JDK,搜索CLASS时先查找当前目录的CLASS文件——为什么这样搞,这是由于LINUX的安全机制引起的,LINUX用户很明白,WINDOWS用户就很难理解(因为WINDOWS默认的搜索顺序是先搜索当前目录的,再搜索系统目录的,再搜索PATH环境变量设定的)

,所以如果喜欢盘根究底的朋友不妨研究一下LINUX。

为什么CLASSPATH后面指定了toolsjar这个具体文件?不指定行不行?显然不行,行的话我还能这么罗索嘛!:)

这个是由java语言的import机制和jar机制决定的,你可以查资料解决。

呵呵,具体的设定方法: win2k\xp用户右键点击我的电脑->属性->高级->环境变量,修改下面系统变量那个框里的值就行了。

win9x用户修改autoexecbat文件,在其末尾加入:

set JAVA_HOME=x:\JDK_142

set PATH=%JAVA_HOME%\bin;%PATH%

set CLASSPATH=\;%JAVA_HOME%\lib\toolsjar

1首先,打开配置环境变量界面,如下 *** 作:我的电脑---属性---高级---环境变量

2系统变量(S)中配置如下:

21,新建系统变量:

变量名:JAVA_HOME

变量值:C:\Program Files\Java\jdk150_17(该目录为JDK安装的目录)

22,编辑CLASSPATH,如果没有该变量则新建,

变量名:CLASSPATH

变量值:%JAVA_HOME%\lib\dtjar;%JAVA_HOME%\lib\toolsjar;(注:该变量值置于CLASSPATH即可, 其中:变量值最后要记得加“;”)

23,编辑PATH,如果没有则新建

变量名:PATH

变量值:;%JAVA_HOME%\bin; (注:该变量值置于PATH前面,如果你只有一个JDK版本,可以不用编辑PATH,如果为了区别版本,那还是配置PATH变量值)。

说明环境变量配置的还是有问题呢,所有分隔符都是英文格式。

如:jdk安装在“D:\Program Files\java\jdk160_10”

第一步:新建“java_home”值,输入“D:\Program Files\java\jdk160_10”;

第二步:新建“classpath”值,输入“;%java_home%\lib”;

第三步:在path中增加“%java_home%\bin”;

备注:配置环境变量在“计算机”右击“属性”,之后选择“高级环境变量”,在选择“环境变量”即可。

亲亲您好~很高兴为您解答!

Java 环境变量包括一些可以在 Java 程序运行时用于指示特定路径或配置信息的变量。

在 Windows 系统中,Java 环境变量一般包括 CLASSPATH 和 PATH 两个变量。

CLASSPATH:指示 Java 类文件的搜索路径。Java 程序运行时,会按照 CLASSPATH 指定的路径来搜索类文件。

PATH:指示可执行文件(包括 Java 命令行工具)的搜索路径。当您在命令行中输入 Java 命令时,系统会按照 PATH 指定的路径来搜索该命令。

需要调用的程序(如java,javac等)所在的地方

。一般是jdk的bin目录,例:

C:/Program Files/Java/jdk150_22/bin

classpath 类的路径,在编译运行java程序时,如果有调用到其他类的时候,在classpath中寻找需要的类或者理解为class文件的存放路径。

Windows下JAVA用到的环境变量主要有3个,JAVA_HOME

(可以不设,设是为了容易理解些)、

CLASSPATH、PATH。下面逐个分析。

JAVA_HOME指向的是JDK的安装路径,如x:/JDK_142,在这路径下你应该能够找到bin、lib等目录。值得一提的是,JDK的安装

路径可以选择任意磁盘目录,不过建议你放的目录层次浅一点,如果你放的目录很深,比如x:/XXXXXX/xxxxx/XXXX/xxxx/XXXX

/xxxx/XXXX/xxx

那么,下面的步骤和以后的应用你都要受累了,呵呵。设置方法:

JAVA_HOME=x:/JDK_142

PATH环境变量原来Windows里面就有,你只需修改一下,使他指向JDK的bin目录,这样你在控制台下面编译、执行程序时就不需要再键入一大串路径了。设置方法是保留原来的PATH的内容,并在其中加上%JAVA_HOME%/bin(注,

,你写成x:/JDK_142也是可以的;你可以打开一个控制台窗口,输入echo

%JAVA_HOME%来看一下你的设置结果) :

PATH=%JAVA_HOME%/bin;%PATH%

同样,%PATH%是引用以前你设置的PATH环境变量,你照抄以前的值就行了。

CLASSPATH环境变量我放在最后面,是因为以后你出现的莫名其妙的怪问题80%以上都可能是由于CLASSPATH设置不对引起的,所以要加倍小心才行。

CLASSPATH=/;%JAVA_HOME%/lib/toolsjar

首先要注意的是最前面的/;,如果你看不清,我给你念念句点反斜杠分号。这个是告诉JDK,搜索CLASS时先查找当前目录的CLASS文件

索当前目录的,再搜索系统目录的,再搜索PATH环境变量设定的)

,所以如果喜欢盘根究底的朋友不妨研究一下LINUX。

这个是由java语言的import机制和jar机制决定的,你可以查资料解决。

呵呵,具体的设定方法:

win2k/xp用户右键点击我的电脑-属性-高级-环境变量,修改下面系统变量那个框里的值就行了。

以上就是关于java中的 classpath有什么用,我配完环境,没设置这个变量,程序也能运行啊! 求大神详细解释一下!全部的内容,包括:java中的 classpath有什么用,我配完环境,没设置这个变量,程序也能运行啊! 求大神详细解释一下!、java环境变量设置中classpath怎么配置、JAVA中path和classpath具体是什么意思等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9469799.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存