`

JDK配置的参数有什么作用

阅读更多
   很多人在初学Java的时候经常会被书中介绍的一堆环境变量的设置搞得头昏脑胀,很多书中都会在初装JDK的时候让他大家设置JAVA_HOME环境变量,在开发程序的时候设置CLASSPATH环境变量,而很多人并不理解这两个环境变量的作用,我们来分别进行详细的阐述。
    首先是JAVA_HOME环境变量,我们先来掌握这个环境变量的设置内容,JAVA_HOME这个环境变量的设置内容是JDK的安装目录,比如说您的 JDK安装在d:\jdk1.6.0这个目录下,请您查看一下这个目录下是不是有一个子目录bin,bin目录中是不是有java.exe这个文件,如果是,那么您的JAVA_HOME环境变量的内容应该为d:\jdk1.6.0。那么我们设置这个环境变量的作用是什么呢?就单独的java开发而言,这个环境变量并没有任何作用,这就是很多根据书上的描述设置好之后,把一本书学完也没有用到这个变量,所以很是不理解。
    其实JAVA_HOME变量最好还是设置一下,首先,我们为了能够编译和运行java程序,需要在PATH环境变量中把java.exe所在的目录设置为 PATH变量的一部分,目的是为了能够通过命令行运行javac和java命令成为可能,当你在命令行中输入javac ...或者java ...的时候,如果提示你一个错误:'javac' 不是内部命令或外部命令,也不是可运行的程序或批处理文件。这时候说明操作系统没有找到你通过命令行输入的javac这个命令,为什么呢?因为操作系统并不知道你的javac.exe这个文件在哪里,所以无法执行对应的文件。那么为了能够让操作系统找到这个可执行文件,我们就需要把javac.exe这个可执行文件所在的目录作为PATH环境变量的一部分设置起来,这样当你在命令行输入一个命令的时候,操作系统就会自动搜索PATH变量中所指定的所有目录了
    在Windows系统中PATH变量中的所有路径采用分号分割,如果在Linux系统中采用冒号分割。另外说明一点,如果你设置好了环境变量,在命令行中还是出现同样的错误,那么有两种可能,一种就是你的设置不正确,另一种就是你的设置没有生效,一般你可以关闭命令行窗口再重新打开就可以了。这对这个设置,以刚才的目录为例,那么PATH变量中的内容就是...;d:\jdk1.6.0\bin,这时候我们可以借用已经设定过的JAVA_HOME,将 PATH的内容修改为:...;%JAVA_HOME%\bin,这样的设置有一定的好处,当你的系统中重新安装JDK,并改变过目录的话,你只要修改 JAVA_HOME的内容就可以了,PATH则不需要修改。此外,JAVA_HOME变量还会有一些其他用途,比如Eclipse这个IDE,它本身是由 java程序编写的,那么在运行的时候必然需要虚拟机的存在,所以Eclipse在启动时需要查找虚拟机,如果有JAVA_HOME这个变量,那么 Eclipse就会利用这个变量找到虚拟机的路径。所以虽然开始JAVA_HOME环境变量可以不设置,但是还是建议大家为以后考虑而设置上。
    我们继续来谈论CLASSPATH的问题,很多书上在讲解java程序的时候建议大家设置CLASSPATH这个环境变量,我们这里不建议大家设置。原因我们会在稍后的时候看到。讲到CLASSPATH,我们首先来看编写java程序时一直在用的两个命令javac和java。
javac的命令语法是这样的:
javac <选项> <源文件>
我们常用的情况是这样的:
javac -classpath <类路径> <要编译的java源文件>
这里的类路径输入什么呢?这里的类路径是指要编译的java源文件中所用的非java的基础API中的类在那个目录下,路径可以是多个目录,用分号隔开来。比如说我们要编译App.java这个文件,而这个文件中用到了com.util这个包中的MyDate这个类,现在我们假设MyDate这个类存在目录是:d:\mylib\com\util\MyDate.class,那么我们如何编译App这个类呢?我们的命令如下:
javac -classpath d:\mylib App.java
注意这里的classpath的内容,我们只是指定路径到package所在目录,并不能把package一起指定进去,而且MyDate.class必须在com\util这个目录中,因为这个类定义了package为com.util。好了现在你对javac中的classpath明白了吗?
我们再来看java这个命令,这个命令的语法是这样的:
java [选项] 类 [参数]
比如说以上面的例子,我们假设App这个类位于com.app这个package中,它的存放目录是:d:\dev\myapp\com\app\App.class,那么我们该如何运行这个类呢?命令如下:
java -classpath d:\dev\myapp;d:\mylib com.app.App
从命令中我们可以看到,在classpath后面我们指定两个目录,分别是App这个类的package所在的目录和MyDate这个类的package 所在的目录,这里的类路径要给定的是要运行的类和这个类用到的所有类的package所在的目录,多个目录之间用分号隔离开来,最后指定要运行的类的时候必须加上package。
好了到这里你应该彻底掌握了编译java程序和运行java程序的诀窍了吧。如果我们在系统环境变量中设置了CLASSPATH的话,在命令行中通过 java运行的时候如果再不指定CLASSPATH参数,那么就会导致java虚拟机只是按照CLASSPATH环境变量中的目录搜索类,而不在你的当前目录下搜索类,结果自然会出现Exception in thread "main" java.lang.NoClassDefFoundError,所以当你看到这个错误的时候请查看一下你的系统环境变量,如果没有设置 CLASSPATH,那么在检查一下你的当前目录。为了确保万无一失,按照上面讲述的例子进行操作是不会发生任何错误。
分享到:
评论

相关推荐

    20220125_6651807_99-整本手册_1535509_30005_0.pdf

    20220125_6651807_99-整本手册_1535509_30005_0.pdf

    基于STM32的数控线性稳压电源与恒压恒流电源资料.pdf

    基于STM32的数控线性稳压电源与恒压恒流电源资料.pdf

    基于STM32的智能台灯:自动调整光照强度并语音播报.pdf

    基于STM32的智能台灯:自动调整光照强度并语音播报.pdf

    urw-base35-nimbus-mono-ps-fonts-20170801-10.el8.x64-86.rpm.tar.gz

    1、文件说明: Centos8操作系统urw-base35-nimbus-mono-ps-fonts-20170801-10.el8.rpm以及相关依赖,全打包为一个tar.gz压缩包 2、安装指令: #Step1、解压 tar -zxvf urw-base35-nimbus-mono-ps-fonts-20170801-10.el8.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm

    sql server2022安装教程

    sql server2022安装教程 SQL Server 2022的安装过程相较于之前的版本有所改进,但基本步骤大体相似。以下是一个通用的SQL Server 2022安装教程指南: ### 准备工作 1. **系统要求**:确保您的计算机满足SQL Server 2022的最低系统要求,包括操作系统版本、处理器、内存(RAM)、硬盘空间等。 2. **下载SQL Server 2022安装文件**:从微软官方网站下载SQL Server 2022的安装介质。您可能需要登录您的Microsoft账户,并且根据您的需求选择正确的版本(开发版、标准版或企业版)。 ### 安装步骤 #### 1. 启动安装程序 - 双击下载的安装文件(通常是一个`.exe`文件),启动SQL Server 2022的安装向导。 #### 2. 安装规则检查 - 安装程序会自动检查您的系统是否符合安装SQL Server的要求。如果有任何问题,解决它们后再继续。 #### 3. 选择安装类型 - 在“产品”选项中,选择您想要安装的SQL Server组件。对于大多数用户来说,“数据库引擎服务”是

    智慧园区解决方案-19PPT(39页).pptx

    智慧园区解决方案摘要 在当今这个信息化、智能化浪潮席卷全球的时代,传统园区正面临着前所未有的转型挑战与机遇。智慧园区,作为未来城市发展的重要组成部分,正以其独特的魅力吸引着越来越多的关注。本文将带您领略智慧园区的精髓,探索其如何通过创新技术实现全面升级,为园区管理者、企业及居民带来前所未有的便捷与高效。 一、智慧园区:从挑战到机遇的华丽转身 传统园区在信息基础设施、数据互通、应用创新等方面存在诸多痛点。老旧的网络系统、独立运行的应用子系统,如同一个个信息孤岛,难以形成合力,导致管理效率低下,用户体验不佳。然而,随着云计算、大数据、人工智能等新一代信息技术的飞速发展,智慧园区应运而生。它不仅仅是对传统园区的简单升级,更是一场深刻的变革。通过构建完善的信息基础设施,实现数据的全面感知、传输、处理与分析,智慧园区能够打破信息孤岛,促进资源的高效整合与共享。这不仅极大地提升了园区的运营效率和管理水平,更为园区的可持续发展奠定了坚实的基础。 在智慧园区中,数据中心平台和IOC运营平台扮演着举足轻重的角色。数据中心平台如同园区的“数据心脏”,负责收集、存储、处理园区内各类数据,为决策提供有力支持。而IOC运营平台则是园区的“智慧大脑”,通过对数据的深度挖掘与分析,实现对园区人、物、事件、能耗、环境等关键要素的实时监测与预警。这种全局性的掌控能力,使得园区管理者能够迅速响应各种突发情况,制定更加科学合理的决策。 二、智慧服务:让园区生活更加便捷高效 智慧园区的魅力不仅体现在其强大的数据处理能力上,更在于它能够为园区内的企业、居民提供全方位、个性化的智慧服务。在信息化服务方面,智慧园区通过智慧招商、物业管理、企业画像等功能,为企业提供了更加便捷、高效的入驻与发展环境。智慧招商系统利用大数据分析技术,帮助企业精准定位目标客户,提高招商转化率;物业管理平台则通过集成化的服务流程,实现了对园区内各类设施的智能化管理,提升了物业服务的品质与效率。 与此同时,智能物联体系的应用更是为园区生活带来了翻天覆地的变化。从智慧资产的全生命周期管理,到智慧楼宇的智能化控制;从智慧安防的主动防范与应急联动,到智慧消防的实时监测与预警,智能物联体系将园区内的各类设施紧密连接在一起,形成了一个有机的整体。这种高度集成的智能化管理模式,不仅提升了园区的安全性与运营效率,更为居民带来了更加舒适、便捷的生活体验。 在生活服务体系方面,智慧园区同样不遗余力。智慧餐饮、智慧休闲等创新应用的推出,让园区内的餐饮、购物、娱乐等生活配套服务变得更加智能化、个性化。通过智能餐具、无人便利店、共享睡眠仓等智能设备的应用,居民可以享受到更加便捷、高效的生活服务。这种集智能化、人性化于一体的生活服务体系,让智慧园区成为了真正意义上的“智慧城市”缩影。 三、未来展望:智慧园区引领城市发展新风尚 随着技术的不断进步和应用场景的不断拓展,智慧园区正朝着更加智能化、人性化、绿色化的方向发展。未来,智慧园区将更加注重数据的深度挖掘与价值创造,通过大数据分析、人工智能等技术手段,为园区内的企业提供更加精准、高效的服务。同时,智慧园区还将加强与城市其他领域的深度融合,如智慧交通、智慧环保等,共同推动城市的智慧化进程。 此外,智慧园区还将更加注重用户体验与参与感。通过构建开放、共享的智慧化服务平台,鼓励居民、企业等各方力量积极参与到园区的智慧化建设中来。这种全民参与、共建共享的智慧化建设模式,不仅将进一步提升园区的智慧化水平,更将激发城市的创新活力与发展潜力。 总之,智慧园区作为未来城市发展的重要方向之一,正以其独特的魅力和无限的潜力吸引着越来越多的关注。我们有理由相信,在不久的将来,智慧园区将成为城市发展的新风尚,引领我们迈向更加智能化、人性化的美好未来。

    java-springboot+vue库存管理系统实现源码(项目源码-说明文档).zip

    系统采用B/S架构,集成Spring Boot(后端)、Vue.js(前端)和MySQL(数据库),通过RESTful API实现前后端分离。采用MyBatis-Plus优化数据访问,模块化设计与自动配置提升开发效率,结合数据库索引和读写分离确保性能,Element UI提供友好交互,整体具备高扩展性和可维护性。

    少时诵诗书所所所所大幅度发十大

    少时诵诗书所所所所大幅度发十大

    基于STM32的智能流速流量监测与水泵报警系统(含阈值设置、LCD1602显示、超阈值报警及Proteus仿真).pdf

    基于STM32的智能流速流量监测与水泵报警系统(含阈值设置、LCD1602显示、超阈值报警及Proteus仿真).pdf

    TenAsys INtime RTOS:兼容PC的硬实时操作系统与灵活部署选项及应用

    内容概要:本文介绍了 TenAsys 公司开发的 INtime RTOS 特性、应用和灵活部署选项。作为一款硬实时操作系统,INtime 支持多处理器平台和时间敏感网络 (TSN),具备微秒级的事件响应时间和广泛的硬件支持。文章详细阐述了 INtime 如何独立运行或与 Windows 操作系统共存,展示了其高度确定性和可靠性。此外,还讨论了 INtime 在多核处理环境中的非对称多处理架构以及分布式应用的实现方式,强调了其在网络通信、I/O 接口分区、虚拟化等方面的优势特性。INtime 提供强大的 SDK 工具,便于开发者进行高效的嵌入式系统编程。文中列举了几种典型应用场景,并提及了不同类型的 INtime 许可授权和服务支持情况。 适用人群:从事嵌入式系统开发的技术人员、项目经理、IT咨询师和科研人员。 使用场景及目标:适用于需要高实时性、稳定性和安全性的工业自动化、通信网络、医疗仪器等领域项目。目标是为企业提供一种高效能、稳定的实时操作系统解决方案,帮助企业更好地应对嵌入式系统的多样化需求和技术挑战。 其他说明:该文档还包含了有关 INtime 最小硬件需求、操作系统版本要求以

    uwsgi-plugin-cache-2.0.27-4.el8.x64-86.rpm.tar.gz

    1、文件说明: Centos8操作系统uwsgi-plugin-cache-2.0.27-4.el8.rpm以及相关依赖,全打包为一个tar.gz压缩包 2、安装指令: #Step1、解压 tar -zxvf uwsgi-plugin-cache-2.0.27-4.el8.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm

    智慧园区解决方案-22PPT(52页).pptx

    智慧园区解决方案摘要 在当今这个信息化、智能化浪潮席卷全球的时代,传统园区正面临着前所未有的转型挑战与机遇。智慧园区,作为未来城市发展的重要组成部分,正以其独特的魅力吸引着越来越多的关注。本文将带您领略智慧园区的精髓,探索其如何通过创新技术实现全面升级,为园区管理者、企业及居民带来前所未有的便捷与高效。 一、智慧园区:从挑战到机遇的华丽转身 传统园区在信息基础设施、数据互通、应用创新等方面存在诸多痛点。老旧的网络系统、独立运行的应用子系统,如同一个个信息孤岛,难以形成合力,导致管理效率低下,用户体验不佳。然而,随着云计算、大数据、人工智能等新一代信息技术的飞速发展,智慧园区应运而生。它不仅仅是对传统园区的简单升级,更是一场深刻的变革。通过构建完善的信息基础设施,实现数据的全面感知、传输、处理与分析,智慧园区能够打破信息孤岛,促进资源的高效整合与共享。这不仅极大地提升了园区的运营效率和管理水平,更为园区的可持续发展奠定了坚实的基础。 在智慧园区中,数据中心平台和IOC运营平台扮演着举足轻重的角色。数据中心平台如同园区的“数据心脏”,负责收集、存储、处理园区内各类数据,为决策提供有力支持。而IOC运营平台则是园区的“智慧大脑”,通过对数据的深度挖掘与分析,实现对园区人、物、事件、能耗、环境等关键要素的实时监测与预警。这种全局性的掌控能力,使得园区管理者能够迅速响应各种突发情况,制定更加科学合理的决策。 二、智慧服务:让园区生活更加便捷高效 智慧园区的魅力不仅体现在其强大的数据处理能力上,更在于它能够为园区内的企业、居民提供全方位、个性化的智慧服务。在信息化服务方面,智慧园区通过智慧招商、物业管理、企业画像等功能,为企业提供了更加便捷、高效的入驻与发展环境。智慧招商系统利用大数据分析技术,帮助企业精准定位目标客户,提高招商转化率;物业管理平台则通过集成化的服务流程,实现了对园区内各类设施的智能化管理,提升了物业服务的品质与效率。 与此同时,智能物联体系的应用更是为园区生活带来了翻天覆地的变化。从智慧资产的全生命周期管理,到智慧楼宇的智能化控制;从智慧安防的主动防范与应急联动,到智慧消防的实时监测与预警,智能物联体系将园区内的各类设施紧密连接在一起,形成了一个有机的整体。这种高度集成的智能化管理模式,不仅提升了园区的安全性与运营效率,更为居民带来了更加舒适、便捷的生活体验。 在生活服务体系方面,智慧园区同样不遗余力。智慧餐饮、智慧休闲等创新应用的推出,让园区内的餐饮、购物、娱乐等生活配套服务变得更加智能化、个性化。通过智能餐具、无人便利店、共享睡眠仓等智能设备的应用,居民可以享受到更加便捷、高效的生活服务。这种集智能化、人性化于一体的生活服务体系,让智慧园区成为了真正意义上的“智慧城市”缩影。 三、未来展望:智慧园区引领城市发展新风尚 随着技术的不断进步和应用场景的不断拓展,智慧园区正朝着更加智能化、人性化、绿色化的方向发展。未来,智慧园区将更加注重数据的深度挖掘与价值创造,通过大数据分析、人工智能等技术手段,为园区内的企业提供更加精准、高效的服务。同时,智慧园区还将加强与城市其他领域的深度融合,如智慧交通、智慧环保等,共同推动城市的智慧化进程。 此外,智慧园区还将更加注重用户体验与参与感。通过构建开放、共享的智慧化服务平台,鼓励居民、企业等各方力量积极参与到园区的智慧化建设中来。这种全民参与、共建共享的智慧化建设模式,不仅将进一步提升园区的智慧化水平,更将激发城市的创新活力与发展潜力。 总之,智慧园区作为未来城市发展的重要方向之一,正以其独特的魅力和无限的潜力吸引着越来越多的关注。我们有理由相信,在不久的将来,智慧园区将成为城市发展的新风尚,引领我们迈向更加智能化、人性化的美好未来。

    【Java单机五子棋】

    一个小游戏,所需知识仅有Java基础和GUI

    numpy-2.2.0-cp313-cp313t-musllinux_1_2_x86_64.whl

    该资源为numpy-2.2.0-cp313-cp313t-musllinux_1_2_x86_64.whl,欢迎下载使用哦!

    通用算力版(cuda12.4)selective-scan-cuda-oflex.cp310-win-amd64.pyd

    Vmamba selective_scan 在Windows下生成的selective_scan_cuda_oflex库,兼容算力低于7.0高于5.0的老旧GPU,同时支持7.0-9.0 等目前常见GPU; 安装博客参考:https://blog.csdn.net/yyywxk/article/details/145018635

    usbguard-tools-1.0.0-2.el8.x64-86.rpm.tar.gz

    1、文件说明: Centos8操作系统usbguard-tools-1.0.0-2.el8.rpm以及相关依赖,全打包为一个tar.gz压缩包 2、安装指令: #Step1、解压 tar -zxvf usbguard-tools-1.0.0-2.el8.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm

    移动应用开发期末作业鸿蒙开发-校园迎新APP项目源码+报告(期末大作业)

    移动应用开发期末作业鸿蒙开发-校园迎新APP项目源码+报告(期末大作业),个人大三期末大作业项目、经导师指导并认可通过的高分设计项目,评审分99分,代码完整确保可以运行,小白也可以亲自搞定,主要针对计算机相关专业的正在做大作业的学生和需要项目实战练习的学习者,可作为课程设计、期末大作业。 移动应用开发期末作业鸿蒙开发-校园迎新APP项目源码+报告(期末大作业)移动应用开发期末作业鸿蒙开发-校园迎新APP项目源码+报告(期末大作业)移动应用开发期末作业鸿蒙开发-校园迎新APP项目源码+报告(期末大作业)移动应用开发期末作业鸿蒙开发-校园迎新APP项目源码+报告(期末大作业)移动应用开发期末作业鸿蒙开发-校园迎新APP项目源码+报告(期末大作业)移动应用开发期末作业鸿蒙开发-校园迎新APP项目源码+报告(期末大作业)移动应用开发期末作业鸿蒙开发-校园迎新APP项目源码+报告(期末大作业)移动应用开发期末作业鸿蒙开发-校园迎新APP项目源码+报告(期末大作业)移动应用开发期末作业鸿蒙开发-校园迎新APP项目源码+报告(期末大作业)移动应用开发期末作业鸿蒙开发-校园迎新APP项目源码+报告。

    【装机之RH2288HV3 2008win sever】

    装机之RH2288HV3 2008win sever

    详解DeepSeek核心技术2025.pdf

    详解DeepSeek核心技术2025.pdf

    基于STM32的温湿度、烟雾浓度、振动频率仿真系统:包含源码、仿真、原理图.pdf

    基于STM32的温湿度、烟雾浓度、振动频率仿真系统:包含源码、仿真、原理图.pdf

Global site tag (gtag.js) - Google Analytics