资讯专栏INFORMATION COLUMN

Java开发环境不再需要配置classpath!

dackel / 3577人阅读

摘要:原配置代码原代码详解代表了我们的路径是关于运行环境的类库,主要是用于的包,如果不使用可以不配置。参见扩展机制如果您从的早期版本升级,那么您的启动设置可能包括不再需要的类路径设置。

前言:

之前发布了关于java开发环境配置的文章,经过与网友的交流,我了解到在jdk1.5以后,java开发环境配置的时候,确实不需要对classpath进行配置,但市面上的书籍,以及一些博客、还是老一套,继续推荐配置classpath,并且关于不需要配置classpath网络上没有什么完整细致,能令人信服的答案,所以我查阅了一些资料以及与别人交流,今天和大家分享一下这些内容。

原配置代码:
.;%Java_Home%bin;%Java_Home%libdt.jar;%Java_Home%libtools.jar
原代码详解:

Java_Home代表了我们jdk的路径

dt.jar是关于运行环境的类库,主要是用于swing的包,如果不使用可以不配置。

tools.jar是工具类库,它在编译和运行一个类时被使用

当我们配置classpath后,系统会根据我们所配置的classpath加载类

例如:在我们使用javac命令编译程序时,系统加载tools.jar其实就封装了下面这样一条命令

javac XXX.java

java -Classpath=%JAVA_HOME%libtools.jar xx.xxx.Main XXX.java

当然tools的功能可不止这一点,但是确实它为我们提供了很多便利

我们不再需要配置classpath了!

在JDK1.5以后,classpath并不是必须配置了,在JDK1.5之前,是没有办法在当前目录下加载类的(找不到 JDK目录下lib文件夹中的.jar文件),所以我们需要通过配置classpath,但JDK1.5之后,JRE能自动搜索目录下类文件,并且加载dt.jar和tool.jar的类。

官方文档解释(JDK Tools and Utilities)
The class path tells the JDK tools and applications where to find third-party and user-defined classes that are not extensions or part of the Java platform. See The Extension Mechanism at 

类路径告诉JDK工具和应用程序在哪里可以找到第三方和用户定义的类,这些类既不是Java平台的扩展,也不是Java平台的一部分。参见扩展机制

If you upgrade from an earlier release of the JDK, then your startup settings might include CLASSPATH settings that are no longer needed. You should remove any settings that are not application-specific, such as classes.zip. Some third-party applications that use the Java Virtual Machine (JVM) can modify your CLASSPATH environment variable to include the libraries they use. Such settings can remain.

如果您从JDK的早期版本升级,那么您的启动设置可能包括不再需要的类路径设置。您应该删除任何与应用程序无关的设置,比如classes.zip。一些使用Java虚拟机(JVM)的第三方应用程序可以修改类路径环境变量,以包含它们使用的库。这样的设置可以保留。

You can change the class path by using the -classpath or -cp option of some Java commands when you call the JVM or other JDK tools or by using the CLASSPATH environment variable. See JDK Commands Class Path Options. Using the -classpath option is preferred over setting the CLASSPATH environment variable because you can set it individually for each application without affecting other applications and without other applications modifying its value. See CLASSPATH Environment Variable.

在调用JVM或其他JDK工具时,可以使用一些Java命令的-classpath或-cp选项,或者使用CLASSPATH环境变量,来更改类路径。参见JDK命令类路径选项。使用-classpath选项优于设置CLASSPATH环境变量,因为您可以为每个应用程序多带带设置它,而不影响其他应用程序,也不需要其他应用程序修改它的值。参见CLASSPATH环境变量。

通过官方的文档说明我们可以看到,rt.jar和tool.jar这两种属于java平台自身的包就不需要添加到classpath中,只有一些第三方类或者自定义类需要,也并不推荐使用配置CLASSPATH的方法,更推荐使用-classpath选项

总结:

在JDK1.5之后的版本,配置Java环境变量的时候我们不再需要配置classpath,只需要配置Java_Home以及path即可!

结尾:

如果内容中有什么不足,或者错误的地方,欢迎大家给我留言提出意见, 蟹蟹大家 !_

如果能帮到你的话,那就来关注我吧!

在这里的我们素不相识,却都在为了自己的梦而努力 ❤

一个坚持推送原创Java技术的公众号:理想二旬不止

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/74620.html

相关文章

  • Java编程基础01——计算机基础

    摘要:外部存储器可用于长期保存大量程序和数据,其成本低容量大,但速度较慢。 1_计算机概述(了解) A:什么是计算机?计算机在生活中的应用举例 计算机(Computer)全称:电子计算机,俗称电脑。是一种能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。由硬件和软件所组成,没有安装任何软件的计算机称为裸机。常见的形式有台式计算机、笔记本计算机、大型计算机等。 应用举例 ...

    xiangzhihong 评论0 收藏0
  • Java系统WebService:Spring与CXF的集成

    摘要:我们再使用这样的来查看这个服务具体的定义这个用以通过查看服务也就是我们开头所说的用通用格式来描述的功能入参和返回值,使我们的调用者明白服务的使用方法具体详情可以查看我们的这个服务的页面。 WebService是什么呢?顾名思义,是Web系统提供的服务,其目的呢,往大了说:是系统实现多异构模块协同合作,服务实现SOA(Services oriented Architecture面向服务的...

    waterc 评论0 收藏0
  • Java002-运行环境

    摘要:运行环境一的三种技术架构开发企业环境下的应用程序,主要针对程序开发完成桌面应用程序的开发,是其它两者的基础开发电子消费产品和嵌入式设备,如手机中的程序二环境的开发和运行环境,的开发工具和。程序的运行环境,运行的所需的类库虚拟机。 运行环境 一.Java的三种技术架构: 01.JAVAEE Java Platform Enterprise Edition开发企业环境下的应用程序,主要针对...

    paraller 评论0 收藏0
  • Windows环境下JDK安装与环境变量配置详细的图文教程

    摘要:原文作者博文出处本节内容安装与环境变量配置以下是详细步骤一准备工具可以到官网下载系统我这里是系统可以根据系统的版本下载相对应的。配置系统环境配置环境变量右击我的电脑高级环境变量。根据自己的安装路径填写环境变量。 原文作者:souvc博文出处:http://www.cnblogs.com/liuhon... 本节内容:JDK安装与环境变量配置 以下是详细步骤 一、准备工具: 1.JDK ...

    Yangyang 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<