java开发环境:
搭建java的运行环境:
环境变量是包含了一个或者多个应用程序所将使用到的信息。当系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。
下载:jdk https://www.oracle.com/technetwork/java/javase/downloads/index.html
点击download (图中两个 点任意一个都行)下载 jdk (在此演示windows系统版的jdk安装过程)
找到下载完的jdk文件双击安装
文件夹使用 英文命名 每一层都用英文命名
安装过程中会弹出另一个窗口 jre安装界面
让jre安装到和jdk目录平行的文件下 也是每层都用英文命名
安装成功
命令提示符窗口 右击 以管理员身份运行 然后输入如图
出现如上jdk版本信息 解释:
java version :java版本 号 也就是 jdk(环境变量)版本信息
之后配置信息 :指定系统文件指定jdk路径
右击电脑 属性----> 点击右侧 高级系统设置-------> 点击下面的环境变量配置 --->
1.在系统文path下指定 jdk的bin目录的绝对地址
2.在系统文件下新建 classpath文件 添加 jdk文件中的两个文件 的绝对地址:
两个文件分别是: ①tools.jar ②dt.jar
(也可用相对地址 指定 文件位置)
配置好上述过程 : 测试上述过程是否有问题的方法:
命令提示符(打开方式 在搜索框中 搜cmd)------->右击以管理员身份运行----->
①输入: java
解析:java命令运行成功是 需要classpath配置,Java源代码被被编译后形成扩展名为“.class”的文件,JVM(Java虚拟机)运行Java 程序时,需要加载已被编译的“.class”的文件以及该“.class”文件导入的其它类(如Java的System类)。设置CLASSPATH的目的就是让JVM能够通过CLASSPATH设置的路径找到这些类文件。
②输入: javac
解析:javac命令运行成功是 需要配置Path环境变量,以方便开发者运行Java编译器等程序。开发者不管是用集成开发工具还是文本编辑工具编写Java程序时,当集成开发工具调用Java编译器或用户在Windows 命令行窗口输入命令运行Java编译器时,操作系统需要从Path环境变量获取Java编译器等程序所在目录并启动运行。
综上所述:java可用说明你配置的classpath是正确的,javac不是内部或外部命令,说明你的path配置有问题,先检查下path路径是否配置正确。
jdk、jre、jvm关系解析:
jdk到底是什么?(java development kit) java语言的软件开发工具包 jdk是java的开发环境(因为需要编译java文件)
jre是什么?jvm标准实现及java核心类库 jre是java程序的运行环境 (因为运行只需要运行编译好的java文件:即字节码)
1.首先看包含关系
2.看安装目录:
① 最外层的 jdk 和 jre
jdk文件中的文件:
src压缩包:存放的内容是java基本类库的源代码(相当于你查看 sort()方法源代码时的东西)全是java文件
bin:jdk开发工具的可执行工具(就是exe程序)
lib:使用的jar包(tools、dt)
jre:java运行时环境的根目录,包含java虚拟机。跟最外层的jre的区别就是:(最外面的jre没有java虚拟机以及所用的东西、一般jdk/jre/bin中 比 最外层的jre多三样东西: ①attach.dll ②sawindbg.dll ③server 文件夹(其中包括启动jvm的jvm.dll文件) )
include:包含C语言头文件,支持Java本地接口与Java虚拟机调试程序接口的本地编程技术
为什么jdk文件里还要jre运行时环境文件?
答:
JDK里的工具有些是用Java所编写,因此要使用JDK所附的工具来开发Java程序,也必须要附一套JRE才行,(如javac.exe、jar.exe等)。
执行程序时执行哪一个jre运行时环境文件的东西?
答:
1.自己的目录下有没有JRE;(什么叫自己的目录下? 一个程序开始是从 编译java源码的编译器javac.exe开始(位于jdk/bin中),所以jdk/bin才叫自己的目录)
2.父目录有没有JRE;
3.查询注册表(环境变量):[HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Java Runtime Environment]
什么是jvm?
jvm:java虚拟机
虚拟出的计算机,基于操作系统之上,处于java编辑器以及操作系统之间的虚拟处理器
jvm可以处理 :.class文件(也就是java的字节码程序)-------->将字节码程序的每一条指令 翻译成--->不同操作系统支持的机器码。
具体步骤:
JVM执行程序的过程 :
I.加载.class文件(JVM执行.class还需要JRE下的lib类库的支持,尤其是rt.jar)
II.管理并分配内存
III.执行垃圾收集
JRE(java运行时环境)包含JVM的java程序的运行环境
JVM是Java程序运行的容器,但是他同时也是操作系统的一个进程,因此他也有他自己的运行的生命周期,也有自己的代码和数据空间。
JVM在整个jdk中处于最底层,负责与操作系统的交互,用来屏蔽操作系统环境。提供一个完整的Java运行环境,因此也叫虚拟计算机.操作系统装入JVM是通过jdk中Java.exe来完成
通过下面4步来完成JVM环境:
1.创建JVM装载环境和配置
2.装载JVM.dll
3.初始化JVM.dll并挂接到JNIENV(JNI调用接口)实例
4.调用JNIEnv实例装载并处理class类
注:jvm虚拟机中详细内容请参考网上文章等:
https://baijiahao.baidu.com/s?id=1609216228997710558&wfr=spider&for=pc