JAVA环境变量配置详解

简介: JAVA环境变量配置详解

1、为什么要配置环境变量

       首先大家要清楚这个很基本的问题,我们配置环境变量是为了能够在Windows系统下直接编译和运行java文件,所以环境变量的配置是对于Windows系统而言。来放个对比,如果大家用的是eclipse就不用配置所谓的环境变量,只需要在eclipse添加本地的JDK就行了。

2、配置环境变量详解

   1、path的配置

       path环境变量的作用是指定命令搜索路径,Windows系统的可执行命令有很多,比如exe、dll、ocx等文件。可执行文件 (executable file) 指的是可以由操作系统进行加载执行的文件。在说这个之前不得不提及java的垮平台性(java可以在不同的系统运行),这依靠的是java中JVM有很多个系统版本。由于我们下载的windows系统版本的jdk里面编译(javac) 和运行(java)java文件 都是下载的Windows版本可执行文件的类型,具体就是javac.exe和java.exe。其实大家不配置path环境变量也能够编译和运行java文件,但是大家在编译和执行的时候必须要去jdk的bin目录下去编译和执行自己编写的java文件(编写好的文件也要放在bin目录下哦)。但是为了方便大家在windows系统下能够在自己编写好的java文件目录下对java文件进行编译和执行就将bin目录添加入path。也就是说在将bin目录下的可执行文件交给了path,之后在执行命令的时候就能够搜索到指定的命令。

   2、classpath(稍微讲解一下,因为网上有人对此有些不理解)

       讲解classpath之前,我们得复习一下运行java运行文件的过程。java文件的运行是先要进行编译(javac),然后在进行运行(java)的。编译的过程是将java文件编译成.class(字节码)文件。运行就是编译好的.class(字节码)文件进行运行。

       classpath的作用是指定编译后的.class所在目录,jvm就会通过该路径去寻找需要的字节码文件,然后运行。其实现在都不用去配这个,是因为在java1.5之后,把当前目录(运行 java  .class 时所在目录)当做了classpath路径,而编译后的.class文件和.java文件在同一目录下,所以不需要配置。

    如果大家一定要去配置的话,要加上当前目录.和jdk目录下bin下的tool.jar和dt.jar。


相关文章
|
4天前
|
Java 程序员 容器
Java中的变量和常量:数据的‘小盒子’和‘铁盒子’有啥不一样?
在Java中,变量是一个可以随时改变的数据容器,类似于一个可以反复打开的小盒子。定义变量时需指定数据类型和名称。例如:`int age = 25;` 表示定义一个整数类型的变量 `age`,初始值为25。 常量则是不可改变的数据容器,类似于一个锁死的铁盒子,定义时使用 `final` 关键字。例如:`final int MAX_SPEED = 120;` 表示定义一个名为 `MAX_SPEED` 的常量,值为120,且不能修改。 变量和常量的主要区别在于变量的数据可以随时修改,而常量的数据一旦确定就不能改变。常量主要用于防止意外修改、提高代码可读性和便于维护。
|
1月前
|
Java 编译器
java“变量 x 可能未被初始化”解决
在Java中,如果编译器检测到变量可能在使用前未被初始化,会报“变量 x 可能未被初始化”的错误。解决方法包括:1. 在声明变量时直接初始化;2. 确保所有可能的执行路径都能对变量进行初始化。
|
12天前
|
Java 编译器
Java重复定义变量详解
这段对话讨论了Java中变量作用域和重复定义的问题。学生提问为何不能重复定义变量导致编译错误,老师通过多个示例解释了编译器如何区分不同作用域内的变量,包括局部变量、成员变量和静态变量,并说明了使用`this`关键字和类名来区分变量的方法。最终,学生理解了编译器在逻辑层面检查变量定义的问题。
Java重复定义变量详解
|
14天前
|
Java 数据库连接 数据库
如何构建高效稳定的Java数据库连接池,涵盖连接池配置、并发控制和异常处理等方面
本文介绍了如何构建高效稳定的Java数据库连接池,涵盖连接池配置、并发控制和异常处理等方面。通过合理配置初始连接数、最大连接数和空闲连接超时时间,确保系统性能和稳定性。文章还探讨了同步阻塞、异步回调和信号量等并发控制策略,并提供了异常处理的最佳实践。最后,给出了一个简单的连接池示例代码,并推荐使用成熟的连接池框架(如HikariCP、C3P0)以简化开发。
33 2
|
20天前
|
Java
通过Java代码解释成员变量(实例变量)和局部变量的区别
本文通过一个Java示例,详细解释了成员变量(实例变量)和局部变量的区别。成员变量属于类的一部分,每个对象有独立的副本;局部变量则在方法或代码块内部声明,作用范围仅限于此。示例代码展示了如何在类中声明和使用这两种变量。
|
26天前
|
Java Linux iOS开发
如何设置 Java 的环境变量
设置Java环境变量是使用Java开发工具和运行Java程序的前提。主要步骤包括:安装JDK,配置系统环境变量中的JAVA_HOME、PATH和CLASSPATH,确保命令行可直接调用javac和java命令。
|
25天前
|
安全 Java 数据安全/隐私保护
如何配置 Java 安全管理器来避免访问控制异常
配置Java安全管理器以防止访问控制异常,需在启动JVM时通过 `-Djava.security.manager` 参数启用,并设置安全策略文件,定义权限规则,限制代码执行操作,确保应用安全。
|
28天前
|
Java BI 调度
Java Spring的定时任务的配置和使用
遵循上述步骤,你就可以在Spring应用中轻松地配置和使用定时任务,满足各种定时处理需求。
118 1
|
1月前
|
消息中间件 分布式计算 Java
大数据-73 Kafka 高级特性 稳定性-事务 相关配置 事务操作Java 幂等性 仅一次发送
大数据-73 Kafka 高级特性 稳定性-事务 相关配置 事务操作Java 幂等性 仅一次发送
27 2
|
1月前
|
分布式计算 资源调度 Hadoop
大数据-01-基础环境搭建 超详细 Hadoop Java 环境变量 3节点云服务器 2C4G XML 集群配置 HDFS Yarn MapRedece
大数据-01-基础环境搭建 超详细 Hadoop Java 环境变量 3节点云服务器 2C4G XML 集群配置 HDFS Yarn MapRedece
72 4