网站首页 > 精选文章 正文
一、JAVA编译运行过程
程序员编写完一段代码后一般会经历两个阶段:编译和运行
第一阶段编译。我们要通过javac(java语言编译器,全称java compiler)把编写的java 源文件(.java)编译,生成所谓的字节码文件(.class)。
第二阶段运行。JAVA程序的运行需要JVM(Java虚拟机,Javav Virtual Machines)的支持。JVM是一个软件,安装在操作系统中,为字节码文件(.class)提供运行环境。
Java官方提供了针对不同平台的JVM软件,这些JVM遵循着相同的标准,只要是标准的.class文件,就可以在不同的JVM上运行,而且运行的效果相同,这样就实现了所谓的“一次编程到处使用”。
二、JDK、JRE、JVM的关系
JDK(Java Development Kit):java开发工具包。是针对java开发人员的工具包。JDK是整个java开发的核心,包含了JRE,java开发工具,java基础类库等。
JRE(Java Runtime Environment):java运行环境。与JDK不同,JRE是java运行环境,并不是一个开发环境,不包含任何开发工具,只针对使用java程序的用户。
在JDK的安装目录里可以找到jre,里面有两个文件夹bin和lib。在这里我们可以认为bin里的就是JVM,lib里就是JVM工作所需要的类库。
JVM(Java Virtual Machines):java虚拟机。它是实现java跨平台的核心部分。
二、安装JDK
可以从官网下载安装JDK:
下载安装时,要注意操作系统(OS)版本和JDK版本之间的对应关系:
三、配置环境变量
如果希望用到JDK所提供的编译(javac)、运行(java)等命令,需要让操作系统可以找到这些命令文件所在的路径,我们可以通过PATH环境变量来实现。
PATH环境变量是一系列的目录,在执行命令时,操作系统会依次在PATH环境变量中的每一个目录中查找该命令。
profile文件中的配置信息:
export JAVA_HOME=/opt/jdk
export CLASSPATH=.
export PATH=/opt/jdk/bin:$PATH
JAVA_HOME指向 javaJDK安装目录,通知某些软件如何找到JDK安装目录;
CLASSPATH表示类的搜索路径,简单的可以使用点(.);
PATH指向JDK的bin目录,javac、java等命令就安装在此目录中。
今天这篇文章主要介绍了java 的编译运行过程,JDK、JRE、JVM的关系,JDK的安装以及配置环境变量的相关知识点,在了解了这些知识以后,在后面的文章中,我们将介绍,软件开发工具Eclipse。
猜你喜欢
- 2025-07-01 Java中的native方法(native java api)
- 2025-07-01 JAVA工程师面试考试测试题(Java面试题HR必备)
- 2025-07-01 干货 | Java语言这10个语言特性你知道吗?
- 2025-07-01 JavaCPP快速入门(官方demo增强版)
- 2025-07-01 Java编程入门第一课:HelloWorld(java编程如何入门)
- 2025-07-01 JVM系列之ClassLoader(jvm classloader)
- 2025-07-01 深入理解Java虚拟机之自己编译JDK
- 2025-07-01 函数入口一定是main吗?为什么不指定编译生成文件名, 默认是a.out?
- 2025-07-01 新手小白学Java|零基础入门笔记|原来学Java可以这么简单
- 2025-07-01 15.将一个给定的PDF文档拆分为多个文档(JAVA+PDFBOX)
- 最近发表
-
- Java中的native方法(native java api)
- JAVA工程师面试考试测试题(Java面试题HR必备)
- 干货 | Java语言这10个语言特性你知道吗?
- JavaCPP快速入门(官方demo增强版)
- Java编程入门第一课:HelloWorld(java编程如何入门)
- JVM系列之ClassLoader(jvm classloader)
- 深入理解Java虚拟机之自己编译JDK
- 函数入口一定是main吗?为什么不指定编译生成文件名, 默认是a.out?
- 新手小白学Java|零基础入门笔记|原来学Java可以这么简单
- 15.将一个给定的PDF文档拆分为多个文档(JAVA+PDFBOX)
- 标签列表
-
- 向日葵无法连接服务器 (32)
- git.exe (33)
- vscode更新 (34)
- dev c (33)
- git ignore命令 (32)
- gitlab提交代码步骤 (37)
- java update (36)
- vue debug (34)
- vue blur (32)
- vscode导入vue项目 (33)
- vue chart (32)
- vue cms (32)
- 大雅数据库 (34)
- 技术迭代 (37)
- 同一局域网 (33)
- github拒绝连接 (33)
- vscode php插件 (32)
- vue注释快捷键 (32)
- linux ssr (33)
- 微端服务器 (35)
- 导航猫 (32)
- 获取当前时间年月日 (33)
- stp软件 (33)
- http下载文件 (33)
- linux bt下载 (33)