`

jdk jre

    博客分类:
  • java
阅读更多

 JDK(java develop kit ,java开发套件),JRE(java runtime environment,java运行时环境),JVM(java virtual machine,java虚拟机)
     JDK
     ++
        |-----jre
                ++
                  |-------jvm
                  |-------
      jre只是jdk的一个部分,我们只要拥有了一份jdk就可以进行java程序开发了,而顾名思义,jre是java运行的时候所依赖的平台,jvm则更只是jre的一个部分,jre除了虚拟机外还提供了众多链接库,这些库会被jvm在运行时调用。
      我们会发现java_home/下有一个bin文件夹和一个jre文件夹,而jre文件夹下也有一个bin文件夹,它们一样吗?显然不一样。
java_home/bin中的工具是sun公司提供给我们一些工具,如java.exe,javac.exe,而jre/bin下的工具是运行时所需的,于是我们可以发现java_home/bin下有一个javac.exe,而jre/bin下肯定没有javac.exe,这是很容易解释的。
      奇怪的是,sun公司给我们提供了两套jre,稍留意一下我们就会发现在装完jdk,还可以选择装一个jre,这个jre是被默认装到C:\Program Files\Java下的。sun提供两套jre是有道理的,如果我们只是想运行java程序,那么去官网下一个jre就行了,而无需拿来一个jdk,如果是要开发java程序那就需要一个jdk了."jdk里面的工具几乎都是用java写的,所以jdk本身就是java应用程序,因此要使用jdk附的工具来开发java程序也必须要自行附一套jre才行,这就是java_home\jre存在的原因,而位于Program File\jre的那套jre就是拿来执行我们自己写的java应用程序的。不过,两套中任何一套jre都可以拿来执行我们所写的java应用程序,可是jdk内附的开发工具在预设开发工具使用包装器(.exe)来启动的情况下,都拿自己支选用java_home\jre".(《Java深度历险》)
      因此,现在可以明白设path和classpath的作用了:path是为jdk提供的那些工具设的,如java.exe,javac.exe,而classpath是为java程序所用到的库文件所设的,于是path设成:java_home\bin;而classpath设为:java_home\jre\lib\rt.jar,如果我们开发的一个应用中用到了非j2se提供的库文件,则需将这些文件加到classpath中,比如说利用javamail开发一个邮件应用,就应该把mail.jar
等文件加到classpath中:java_home\jre\lib\ext\mail.jar;.
     如果一台PC上装了几个jre,那么就要注意了,有时很容易产生问题,很可能我们用来编译java程序的javac.exe所相关的jre与运行程序时所用的jre不是一个版本, 这可能会产生版本冲突,这可以通过设定path变量来解决。
      最后应用中的第三方文件应该加到java_home\jre\lib\ext下,就像刚才那样,与java相关的安全设定档都放置java_home\jre\lib\security。最后扩展一点,与java相关的很多工具的path设定原则都与上述差不多,比如说想安装一个Ant,应该在path 中这样设:
F:\\Ant\apache-ant-1.6.5\bin;看看bin下有什么就明白这样做是为了指定命令工具ant所在的目录。

 

 

 

java.lang.NoClassDefFoundError: com/lang/Sun
Exception in thread "main"

重新导一下jar包就ok了

分享到:
评论

相关推荐

    Java环境 Eclipse配置教程+软件包jdk jre

    首先,我们需要下载Java Development Kit (JDK) 和Java Runtime Environment (JRE)。JDK是用于编写和编译Java程序的工具集,而JRE则是运行Java程序所必需的环境。你可以通过Oracle官方网站获取这两个组件的最新版本...

    少量积分-java jdk jre各种版本非官方但安全的下载地址

    jdk jre各种版本win、mac、linux等,非官方但安全的下载地址,不用登陆甲骨文官网,不用忍受龟速下载 jdk-8u-linux-x64.tar.gz jdk-8u-windows-x64.exe

    java jdk jre 1.8

    jdk jre 1.8

    jdk jre 1.7免安装版

    在"jdk jre 1.7免安装版"中,我们讨论的是Oracle公司发布的Java 7版本,无需通过传统安装过程即可使用的特别版本。 JDK 1.7,也被称为Java 7或Java SE 7,是在2011年发布的一个重要更新。这个版本引入了许多新特性...

    Java零基础 - JDK JRE JVM三者关系.md

    ### Java零基础-JDK JRE JVM三者关系详解 #### 一、引言 在Java编程的世界里,JDK(Java Development Kit)、JRE(Java Runtime Environment)和JVM(Java Virtual Machine)这三个核心概念是不可或缺的基础知识。...

    AIX JDK1.8 JRE1.8 32位

    标题中的"AIX JDK1.8 JRE1.8 32位"指的是IBM的Java开发工具包(JDK)和Java运行环境(JRE)的32位版本,这两个组件都是针对AIX操作系统设计的。AIX,全称Advanced Interactive eXecutive,是IBM推出的一种基于UNIX的...

    java jdk jre8

    Java JDK与JRE是Java开发和运行环境中的两个核心组件,它们在软件开发和应用程序执行中扮演着至关重要的角色。本文将深入探讨这两个组件的概念、功能以及它们之间的关系。 Java Development Kit (JDK) 是Oracle公司...

    JDK JRE 的作用与区别

    ### JDK与JRE的作用及区别 #### 一、概述 在深入探讨JDK与JRE的具体差异之前,我们首先需要了解这两个概念的基本定义及其在Java开发环境中的地位。 #### 二、JDK(Java Development Kit) JDK是Java开发工具包的...

    jdk、jre、jvm的区别

    ### JDK、JRE与JVM的区别详解 #### 一、引言 在深入探讨JDK、JRE与JVM之间的区别之前,我们首先需要明确这三个概念的基本定义及其各自的作用。对于初学者而言,理解这些核心组件是学习Java编程的基础。 #### 二、...

    jdk与jre的区别

    ### JDK与JRE的区别 在Java开发领域,经常会遇到JDK(Java Development Kit)与JRE(Java Runtime Environment)这两个概念。尽管它们都是Java技术体系中的核心组成部分,但两者之间存在明显的区别。本文将深入探讨...

    java jdk jre 资源信息

    Java的基石包括JDK(Java Development Kit)和JRE(Java Runtime Environment)。本文将深入探讨这两个组件以及它们在Java生态系统中的角色。 首先,JDK是Java开发者的核心工具集。全称为Java开发工具包,它包含了...

    Java中JDKJRE和JVM解析.doc

    ### Java中的JDK、JRE与JVM解析 #### 一、引言 在Java编程领域,JDK、JRE和JVM这三个概念是至关重要的基础知识点。虽然它们经常被提及,但很多人仍然对它们之间的关系和各自的功能感到困惑。这篇文章将深入探讨这...

    JDK JRE与JVM1

    Java 技术体系的核心组成部分包括 JDK (Java Development Kit),JRE (Java Runtime Environment) 和 JVM (Java Virtual Machine)。理解这三个概念对于Java开发者至关重要。 首先,JDK是Java开发工具包,它是Java...

    AIX-JDK8-JRE8_64位.rar

    标题"AIX-JDK8-JRE8_64位.rar"所指的是一款针对AIX操作系统的Java Development Kit(JDK)和Java Runtime Environment(JRE)的64位版本安装包。AIX,全称Advanced Interactive eXecutive,是由IBM开发的一种强大的...

    .jdbc.jar放置到jdk8或jre8的lib\ext文件夹中

    1.jdbc.jar放置到jdk8或jre8的lib\ext文件夹中,如果不起作用请尝试jre的lib文件夹; 2.将jdbcodbc.dll放置到jre8的bin文件夹中; 3.重新启动JVM.

Global site tag (gtag.js) - Google Analytics