JRE与JDK的界别

2019-03-25 21:53栏目:IT操作系统

Windows 下安装drozer(Windows 10),连接手提式有线电话机(华为note4X)

率先下载drozer(http://mwr.to/drozer)。

1. 二者的概念
  JRE(Java Runtime Enviroment)是Java的运转条件。面向Java程序的使用者,而不是开发者。若是你仅下载并设置了JRE,那么您的系统只可以运转Java程序(也正是.class文件)。JRE是运作Java程序所必须环境的集纳,包蕴JVM标准落到实处及 Java宗旨类库。它包涵Java虚拟机、Java平台大旨类和支撑文件。它不带有开发工具(编写翻译器、调节和测试器等)。

转自:

关于jdk和jre 

国产手提式有线话机开发者方式

相遇第多少个难点,华为手提式有线话机开发者形式。好久不用这几个了,发现找不到。网上检索一波,

在装置-作者的装备-全体参数,地点,点击MIUI版本5次,打开开发者情势作用。

然后去越多安装里边-开发者选项-打开USB调节和测试。

  JDK(Java Development Kit)又称J2SDK(Java2 Software Development 基特),是Java开发工具包,它提供了Java的开发条件(提供了编写翻译器javac等工具,用于将java文件编译为class文件)和运维条件(提供了JVM和Runtime协助包,用于解析class文件使其取得周转,也正是JRE)。如若您下载并设置了JDK,那么你不单能够支付Java程序,也还要负有了运营Java程序的阳台。JDK是整个Java的着力,包含了Java运转条件(JRE),一堆Java工具tools.jar和Java标准类库 (rt.jar)。

  1. 定义
    JRE(Java Runtime Enviroment)是Java的运维条件。面向Java程序的使用者,而不是开发者。要是你仅下载并安装了JRE,那么您的种类只好运营Java程序。JRE是运维Java程序所必须环境的集结,蕴含JVM标准落实及 Java核心类库。它包罗Java虚拟机、Java平台宗旨类和协理文件。它不分包开发工具(编写翻译器、调节和测试器等)。
    JDK(Java Development Kit)又称J2SDK(Java2 Software Development Kit),是Java开发工具包,它提供了Java的开发条件(提供了编写翻译器javac等工具,用于将java文件编写翻译为class文件)和平运动作环境(提 供了JVM和Runtime辅助包,用于解析class文件使其获得周转)。就算您下载并设置了JDK,那么您不光能够支付Java程序,也还要兼有了运维Java程序的阳台。JDK是全体Java的中心,包括了Java运营条件(JRE),一堆Java工具tools.jar和Java标准类库 (rt.jar)。
  2. 区别
    JRE重要涵盖:java类库的class文件(都在lib目录下打包成了jar)和虚拟机(jvm.dll);JDK首要含有:java类库的 class文件(都在lib目录下打包成了jar)并自带1个JRE。那么为啥JDK要自带三个JRE呢?而且jdk/jre/bin下的client 和server三个文本夹下都含有jvm.dll(表明JDK自带的JRE有五个虚拟机)。
    回忆在环境变量path中安装jdk/bin路径吗?老师会告诉大家不设置的话javac和java是用持续的。确实jdk/bin目录下富含了有着的吩咐。可是有没有人想过大家用的java命令并不是jdk/bin目录下的而是jre/bin目录下的吗?不信能够做四个试验,大家能够把jdk /bin目录下的java.exe剪切到别的地点再运转java程序,发现了怎么样?一切OK!(JRE中尚无javac命令,原因很简短,它不是付出环境)那么有人会问了?小编肯定没有设置jre/bin目录到环境变量中啊?试想一下假若java为了提须要当先八分之四人采纳,他们是不必要jdk做开发的,只要求jre能让java程序跑起来就足以了,那么每种客户还索要手动去设置环境变量多麻烦啊?所以安装jre的时候安装程序自动帮您把jre的java.exe添加到了系统变量中,验证的方法很简短,去Windows/system32底下去探望啊,发现了怎么?有多少个java.exe。
  3. 难点
    若果设置了JDK,会发现你的处理器有两套JRE,一套位于C:Program FilesJavajre6, 此外一套位于 C:Program FilesJavajdk1.6.0_41jre目录下。
    JRE的身价就象一台PC机一样,大家写好的Win32应用程序必要操作系统帮大家运营,同样的,大家编辑的Java程序也必供给JRE才能运维。所以当你装完JDK后,如若个别在硬盘上的三个例外市方设置了两套JRE,那么你能够想象你的处理器有两台虚拟的Java 
    PC机,都兼备运转Java程序的法力。所以大家得以说,只要您的总结机安装了JRE,就能够正确运营Java应用程序。 
    ① 、为啥Sun要让JDK安装两套相同的JRE?
    那是因为JDK里面有为数不少用Java所编写的开发工具,如javac.exe、jar.exe等,这么些命令放置在 C:Program FilesJavajdk1.6.0_41bin目录里。
    因为她们是java编写的通令,所以要依靠java的jar包,这几个jar包存放在C:Program FilesJavajdk1.6.0_41lib目录里
    如果将C:Program FilesJavajdk1.6.0_41lib目录里面包车型客车tools.jar改名为tools1.jar,然后运营javac.exe,突显如下结果: 
    Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tools/javac /Main 
    但是输入 java -cp C:Program FilesJavajdk1.6.0_41libtools1.jar com.sun.tools.javac.Main 
    会拿走与javac.exe相同的结果。
    从此间大家得以注明javac.exe只是二个包装器(Wrapper),而成立的目标是为着让开发者免于输入太长的指命。
    还要大家得以窥见C:Program FilesJavajdk1.6.0_41bin目录下的程序都十分小,不超出29K,从那边大家得以得出贰个结论。正是JDK里的工具大致是用Java所编写,所以也是Java应用程序,由此要使用JDK所附的工具来支付Java程序,也非得要自行附一套JRE才行,所以放在C:Program FilesJavajdk1.6.0_41jre目录下的那套JRE正是用来运营一般Java程序用的。 
    贰 、若是一台电脑安装两套以上的JRE,哪个人来控制吧?
    本条重庆大学职责就落在java.exe身上。java.exe的劳作就是找到适当的JRE来运作Java程序。 java.exe依照底下的次第来探寻JRE:本人的目录下有没有JRE;父目录有没有JRE;查询注册表:
    [HKEY_LOCAL_MACHINESOFTWAREJavaSoftJava Runtime Environment] 
    于是java.exe的周转结果与您的总括机内部哪个JRE被执行有相当的大的关联。(本文于2015年6月6日修订)
    小提醒:此时的纪念会随着时光的延迟而忘掉,温故而知新,提议大家及时把本文收藏下来,以后慢慢回味。

我们一定在设置JDK的时候会有接纳是或不是安装单独的jre,一般都会同步安装,作者也提议大家这么做。因为如此更能支援大家弄理解它们的界别: 

配置adb

下载地址(百度网盘链接: 密码: txjw )

免安装的,加压后,配置环境变量,用起来相比便宜。

 

Drozer安装直接setup就可以了。

 

 

手机端,安装agent.apk。

翻开监听格局。

ca888会员登录 1

电脑端,

在PC上采用adb进行端口转载,转载到Drozer使用的端口31415

 

adb forward tcp:31415 tcp:31415

 

然后在PC上开启Drozer console,

drozer安装目录下输入:drozer.bat console connect

结果出错了

 

If this error persists, specify the path in the ~/.drozer_config file:

 

    [executables]ca888会员登录 ,     java = C:pathtojava Selecting a4436bc92222a537 (Xiaomi Redmi Note 4X 7.0)

 

ca888会员登录 2

亟需配置Java路径。

C:Users用户名>目录下创设.drozer_config文件。

Win10下不能够直接新建.drozer_config文件。

亟待先创制1.txt文书,

写入如下内容(jdk路径依照具体意况去写)

[executables]

java=D:Javajdk1.8.0_181binjava.exe

javac=D:Javajdk1.8.0_181binjavac.exe

下一场在该目录运行cmd,

Rename 1.txt .drozer_config

 

体现如下图,就不足为奇了。

ca888会员登录 3

2. 二者的区分
  JRE首要含有:java类库的class文件(都在lib目录下打包成了jar)和虚拟机(jvm.dll);

Jre 是java runtime environment, 是java程序的运作环境。既然是运作,当然要含有jvm,也正是我们熟稔的虚拟机啦,还有全部java类库的class文件,都在lib目录下打包成了jar。大家能够团结评释。至于在windows上的虚拟机是哪位文件呢?学过MFC的都知情怎么是dll文件呢,那么大家看看jre/bin/client里面是否有一个jvm.dll呢?那便是虚拟机。 

  JDK首要包罗:java类库的class文件(都在lib目录下打包成了jar)并自带一个JRE。那么为啥JDK要自带2个JRE呢?而且jdk/jre/bin下的client和server多个文件夹下都饱含jvm.dll(表明JDK自带的JRE有多少个虚拟机)。
回想在环境变量path中设置jdk/bin路径吗?老师会告诉咱们不设置的话javac和java是用持续的。确实jdk/bin目录下富含了独具的命令。不过有没有人想过大家用的java命令并不是jdk/bin目录下的而是jre/bin目录下的呢?不信能够做一个尝试,我们能够把jdk /bin目录下的java.exe剪切到其余地点再运转java程序,发现了哪些?一切OK!(JRE中绝非javac命令,原因很简短,它不是开发条件)那么有人会问了?小编显明没有安装jre/bin目录到环境变量中啊?试想一下只要java为了提要求超过六分之三人使用,他们是不须要jdk做开发的,只须要jre能让java程序跑起来就足以了,那么各个客户还索要手动去设置条件变量多麻烦啊?所以安装jre的时候安装程序自动帮你把jre的java.exe添加到了系统变量中,验证的措施很简短,去Windows/system32上边去探望吧,发现了何等?有三个java.exe。

Jdk 是java development kit,是java的开发工具包,里面含有了各体系库和工具。当然也囊括了别的贰个Jre. 那么为啥要包蕴别的一个Jre呢?而且jdk/jre/bin同时有client和server五个文本夹下都包罗3个jvm.dll。表明是有八个虚拟机的。那一点不知晓大家是或不是注意到了啊? 

 

深信大家都清楚jdk的bin下有各类java程序需求选择的命令,与jre的bin目录最通晓的分别正是jdk下才有javac,这点很好精晓,因为 jre只是2个运转环境而已。与付出非亲非故,正因为那样,具备开发成效的jdk自个儿的jre下才随同时有client性质的jvm和server性质的 jvm, 而仅仅作为运维环境的jre下只须要client性质的jvm.dll就够了。 

版权声明:本文由ca888发布于IT操作系统,转载请注明出处:JRE与JDK的界别