网站首页 > java教程 正文
很多朋友都有自学Java的愿望,但是自学一门语言何其艰难,没人指引的话往往不得其门而入。那么,今天千锋老师就给大家带来Java入门课程中配置Java运行环境的方法,希望能够对大家有所帮助。
一、JDK安装
§ 什么是JVM
Java Virtual Machine(Java虚拟机),帮助Java实现跨平台
§ 什么是JRE
Java Runtime Environment(Java 运行环境),包括JVM和Java程序运行所需核心类库
§ 什么是JDK
Java Development Kit(Java开发工具包),包括JRE以及Java开发工具。开发工具包括我们熟悉的:Javac.exe、jar.exe
简而言之:JDK是Java开发人员用来开发Java程序的,JRE负责运行。虽然JDK包括JRE,但是我们安装JDK软件时,一般也会选择安装JRE。
二、比较容易忽视或者疑惑的几个点
§ Javac和Java分别指的是什么?
Javac是“编译”,运行该命令会启动编译器,将我们写的Java源码(.Java)编译为字节码文件(.class)。因为虚拟机无法识别源码,只认识字节码文件。必须注意的是,编译只是检查语法等,不能确保程序逻辑的自洽。
Java是“运行”命令,会调用虚拟机让程序跑起来。
§ 什么是path环境变量,为什么一定要配?
大家只要理解下面这段话,就能完全理解path环境变量的作用:
当我们进入任意目录执行时,比如
当前目录 F:developsvn代码EProtectsrccomcontrollerapi
程序会优先在当前目录下寻找Javac.exe来执行HelloWorld.Java。
没有配置path时,如果当前目录下没有找到Javac.exe,那么直接报错。
如果配置了path,当前目录找不到,不会立即报错。会去path代表的目录(bin)下再找找。
理解了上面这段话后,就很容易明白:
Javac和Java只在bin目录下。所以如果没有配置path,我们只能在bin目录下编写代码。因为程序会优先在当前目录寻找Javac.exe。找不到就直接报错。
而如果配置了path,即使源码文件不在bin目录下,执行时当前目录找不到Javac.exe,程序还会去path所代表的路径下找。
所以这才是配置path后,所有目录都能执行Javac/Java命令的原因!
配置path环境变量的目的:
除了便于修改路径不影响其他环境配置外,很多软件安装时,比如Eclipse/MyEclipse,由于要关联JDK或者JRE,它会去找JAVA_HOME这个配置。所以这也要求我们必须配置JAVA_HOME。
§ classpath是什么?和path有啥区别?一定要配吗?
首先,这个不重要,可以不用配。classpath人如其名,它只和字节码文件有关(.class)。
如果说,path的作用是帮助我们在任何目录下都可以使用Javac、Java命令(先查找当前目录,在查找path路径)。
那么classpath的目的就是让我们在任何目录下都能执行指定目录下的.class文件,而无需进入.class文件所在目录。
比如原本是:
你只进到了:
这个目录下是找不到HelloWorld.class的。配置path环境变量后,Java命令虽然可以用,奈何巧妇难为无米之炊。
而配置classpath后,不用进入到.class文件所在目录也可以运行它。
怎么样?千锋广州Java老师总结的配置Java运行环境技巧你学会了吗?觉得有用的小伙伴可以收藏转发哦!
- 上一篇: 天天用的开发环境,你真的了解吗?
- 下一篇: 编程语言第一:JAVA——java开发环境
猜你喜欢
- 2024-09-11 linux系统上如何搭建Java环境。 - 蓝易云
- 2024-09-11 「秒懂Java」「02_搭建开发环境」01_Java开发必备
- 2024-09-11 java语言特性概述(简述java语言的特性)
- 2024-09-11 手把手教你搭建java环境(如何建立java环境)
- 2024-09-11 火了20年,最受欢迎的开发语言——Java有这么难吗「1」
- 2024-09-11 Java运行环境变量的配置(java环境变量配置教程)
- 2024-09-11 一文教您如何实现持续集成服务器环境搭建
- 2024-09-11 j-roadflow java工作流引擎测试环境部署
- 2024-09-11 Docker搭建 Java Web 项目运行环境
- 2024-09-11 软件系统运行环境配置文档(仅供参考)
你 发表评论:
欢迎- 最近发表
-
- Java常量定义防暴指南:从"杀马特"到"高富帅"的华丽转身
- Java接口设计原则与实践:优雅编程的艺术
- java 包管理、访问修饰符、static/final关键字
- Java工程师的代码规范与最佳实践:优雅代码的艺术
- 编写一个java程序(编写一个Java程序计算并输出1到n的阶乘)
- Mycat的搭建以及配置与启动(mycat部署)
- Weblogic 安装 -“不是有效的 JDK Java 主目录”解决办法
- SpringBoot打包部署解析:jar包的生成和结构
- 《Servlet》第05节:创建第一个Servlet程序(HelloSevlet)
- 你认为最简单的单例模式,东西还挺多
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)