jdk是什么意思(jdk是什么牌子)[通俗易懂]

jdk是什么意思(jdk是什么牌子)[通俗易懂]当你安装JDK时,你肯定会选择是否安装一个单独的jre。一般你们会一起安装。我也建议你这样做。因为这将帮助你弄清楚它们之间的区别: Jre即java运行时环境,是java程序的运行环境。既然在运行,…

大家好,我是讯享网,很高兴认识大家。

当你安装JDK时,你肯定会选择是否安装一个单独的jre。一般你们会一起安装。我也建议你这样做。因为这将帮助你弄清楚它们之间的区别:

Jre即java运行时环境,是java程序的运行环境。既然在运行,当然应该包括jvm,也就是大家熟悉的虚拟机,java类库的所有类文件都打包到lib目录下的jar中。你可以自己验证一下。至于windows上的虚拟机是哪个文件?学过MFC的都知道什么是dll文件,那我们来看看jre/bin/client里有没有jvm.dll。这就是虚拟机。

Jdk是java开发工具包,是java的开发工具包,里面包含了各种类库和工具。当然还包括另一个Jre。那么为什么还要包含另一个Jre呢?此外,jdk/jre/bin具有客户端和服务器文件夹,并且这两个文件夹都包含一个jvm.dll。有两个虚拟机。不知道大家有没有注意到这一点?

相信大家都知道,jdk的bin下有java程序需要的各种命令。和jre的bin目录最明显的区别就是jdk下只存在javac,这个很好理解,因为jre只是一个运行环境。与发展无关。正因为如此,具有开发功能的jdk会在自己的jre下同时拥有客户端jvm和服务器jvm,但在jre下只需要客户端jvm.dll作为运行环境。

记得在环境变量path中设置jdk/bin路径吗?这应该是大家学习java的第一步。老师会告诉你javac和Java不设置是不能用的。确实,jdk/bin目录包含了所有的命令。但是有没有人想过,我们用的java命令不是在jdk/bin目录而是在jre/bin目录?不信你可以做个实验。你可以把jdk/bin目录下的java.exe剪切到另一个地方,然后运行java程序。你发现了什么?一切都好!

所以有人会问?我显然没有在环境变量中设置jre/bin目录。

试想一下,如果大多数人都有java,他们不需要jdk进行开发,但是只有jre可以让java程序运行起来。每个客户都要手动设置环境变量有多麻烦?因此,在安装jre时,安装程序会自动将jre的java.exe添加到系统变量中。验证方法很简单。您可以看到在系统环境变量的路径前面有一个“%SystemRoot%system32”。% SystemRoot %“这样的配置,然后去下面的Windows/system32看一看,你发现了什么?有一个java.exe。

如果可以强制将jdk/bin移到system32变量前面,当然可以强制使用jdk/jre中的java,但除非必要,我不建议你这么做。使用单独的jre运行java程序也可以看作是在客户环境中的一次测试。

一般来说,jdk是java的开发包,包括jreJre只是java的运行时环境;除了编译器和其他工具之外,JDK还包括相同版本的JRE。

JDK是java开发工具包的缩写。它是一个在java平台上构建应用程序、苹果和组件的开发环境。JDK是所有java应用程序的基础,所有java应用程序都建立在它之上。它是一组API,或者一些java类。要成为一名Java程序员,JDK是必不可少的基本工具。

JRE是Java运行时环境的缩写。和Java虚拟机基本上是一个概念。一般来说,在谈论一个具体的产品时,我们可以说“JRE”,而在谈论一个理论模型时,我们经常使用“Java虚拟机”。JRE是使用Java程序不可或缺的环境。

如果机器上安装了多个版本的jdk,如下所示:

BEA Weblogic Server 7.0附带了一组JDK1.3.1_02

下载了一套最新的JDK1.4.1_02

JBuilder9附带了一套JKD1.4.1_02

Oracle8.1.7附带了一组JRE1.1.7

口粮玫瑰自带一套JDK1.3

DreamWeaver附带了一套JDK1.3

6套JRE,每套JRE安装在不同的目录下,不会互相影响。当在控制台中执行java.exe时,操作系统通过以下方式查找JRE:

首先在当前目录中查找JRE。

在父目录中查找JRE。

然后,在path path中查找JRE(一般情况下,在运行时在path中查找JRE,并设置路径前后的顺序,以先出现的为准)

注册表HKEY _本地_机器\软件\ javasoft \ Java运行时环境\查看CurrentVersion的键值指向哪个JRE(一般XP中就是这个:C:\Program Files\Java\jre6)

最常用的方法是在路径中查找JRE。一般在运行自己的程序之前,会在批处理文件中临时设置路径,把自己的JRE放在路径的前面,这样肯定会运行自己的JRE,不会造成版本混乱。

JDK是Java开发工具包。简单来说,JDK就是一个面向开发者的SDK,提供Java开发环境和运行环境。SDK软件开发包一般指软件开发包,可以包括函数库、编译器等。

JRE是Java Runtime Enviroment,指的是Java的运行环境。它是面向Java程序的用户,而不是开发者。

如果安装了JDK,你的电脑会有两套JRE,一套在\jre,另一套在C:\ Program Files \ Java \ JRE 1 . 5 . 0 _ 15目录。后一组比前一组的服务器端Java虚拟机少,只是直接从前一组复制服务器端Java虚拟机。并且在安装JDK的时候,可以选择是否安装这个位于C:\Program Files\Java目录下的JRE。如果你只安装JRE而不是JDK,那么C:\Program Files\Java目录下只会安装一套JRE。

JRE就像一台PC。我们编写的Win32应用程序需要操作系统为我们运行。同样,我们编写的Java程序也需要JRE来运行。所以在你安装了JDK之后,如果你在硬盘上的两个不同的地方安装了两套JRE,那么你可以想象你的电脑有两台虚拟的Java PC,都有运行Java程序的功能。所以我们可以说,只要你的电脑上安装了JRE,就可以正确运行Java应用。

1.为什么Sun希望JDK安装两套相同的JRE设备?

这是因为有许多用Java编写的开发工具(如javac.exe、jar.exe等。)在JDK,并且都放在\ lib \ tools.jar中,从下面的例子可以看出,先把tools.jar的名字改成tools1.jar,然后运行javac.exe,会显示以下结果:线程“main”中出现异常Java . lang . noclassdeffunderror:com/sun/tools/javac/main。这意味着,输入javac.exe和输入Java-CP C:\ JDK \ lib \ tools . jarcom . sun . tools . javac . main是一样的,得到的结果是一样的。从这里可以证明,javac.exe只是一个包装器,制作它的目的是为了让开发者不用输入太长的指令。而且我们可以发现\lib目录下的程序都很小,不超过2 9K,由此可以得出结论。也就是说,JDK的工具几乎都是用Java写的,所以也是Java应用。因此,如果要使用JDK附带的工具开发Java程序,还必须附带一套JRE。因此,位于C:\Program Files\Java目录下的JRE用于运行一般的Java程序。

2.如果一台电脑上安装了两套以上的JRE,谁来决定?

这一重任落在了java.exe身上。Java.exe的工作就是找到一个合适的JRE来运行Java程序。Java.exe按照以下顺序寻找JRE:自己的目录里有JRE吗;父目录是否有JRE;查询注册表:【HKEY _本地_机器\软件\ javasoft \ Java运行时环境】所以java.exe的运行结果和你的电脑执行的是哪一个JRE有很大关系。

添加:(摘要)

1.JVM-java虚拟机JVM就是我们常说的java虚拟机。它是整个跨平台java实现的核心部分。所有的Java程序都将被编译成。类,它可以在虚拟机上执行。也就是说,class并不直接对应机器的操作系统,而是通过虚拟机间接与操作系统交互,虚拟机将程序解释给本地系统执行。

2.JRE-java运行时环境JRE指的是java运行时环境。单独的JVM是不能作为一个类来执行的,因为JVM在解释类的时候需要调用解释所需的类库lib。在JDK的安装目录中,您可以找到jre目录,其中包含两个文件夹,bin和lib。这里可以认为bin是jvm,lib是jvm工作所需的类库,jvm和lib的结合称为jre。所以,在你编写java程序并把它编译成。同学们,你们可以把这个打包。class文件和jre一起发送给你的朋友,这样你的朋友就可以运行你写的程序了。(有一个java.exe在跑。jre中的类)

3.JDK-java开发工具包JDK是一个java开发工具包。基本上每个学Java的人都会先在机器上安装一个JDK。它包含哪些部分?让我们看看JDK的安装目录。目录下有六个文件夹,一个src类库源码压缩包,还有几个其他的声明文件。其中真正在运行java时发挥作用的有以下四个文件夹:bin、include、lib、jre。现在我们可以看到这样一种关系,JDK包含JRE,JRE包含JVM。Bin:最重要的是编译器(javac.exe)include:用于java和JVM交互的头文件lib:类库jre:java运行时环境(注意:这里的bin和lib文件夹与jre中的不同)。一般来说,JDK是用于Java程序的开发,而jre是一个只能运行类而不能编译的函数。

Eclipse、idea等ide都有自己的编译器,而不是JDK bin目录自带的,所以在安装的时候,你会发现他们只要求你选择jre路径。

欢迎工作一到五年的Java工程师加入Java技术交流群:659270626。

小组免费提供Java架构学习资料(有高可用、高并发、高性能、分布式的架构资料,Jvm性能调优,Spring源代码,MyBatis,Netty,Redis,Kafka,MySQL,Zookeeper,Tomcat,Docker,Dubbo,Nginx等知识点)。合理利用自己的每一分每一秒来学习和提升自己。不要再用它们了。趁年轻,努力拼搏,以后给自己一个交代!

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。
本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://51itzy.com/30798.html
(0)
上一篇 2023年 8月 23日 19:00
下一篇 2023年 8月 23日 19:51

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注