Java 类文件位于JDK文件夹中的什么位置?

Java 类文件位于JDK文件夹中的什么位置?,java,jdk1.5,Java,Jdk1.5,这听起来可能是个愚蠢的问题。Sun的核心类文件(如Button.class)位于JDK安装文件夹C:\Program files\Java\jdk1.5.0_12)的哪里 或者类文件是否驻留在C:\Program files\Java\jre1.5.0\u 12文件夹中?它们分布在几个罐子之间。但看起来按钮在jre/lib/rt.jar中。类文件实际上作为jar文件驻留在正在使用的Java发行版中。大多数文件都在rt.jar(运行时)中 大多数开发人员机器实际上安装了两种形式的Java。JDK(

这听起来可能是个愚蠢的问题。Sun的核心类文件(如
Button.class
)位于JDK安装文件夹
C:\Program files\Java\jdk1.5.0_12
)的哪里


或者类文件是否驻留在
C:\Program files\Java\jre1.5.0\u 12
文件夹中?

它们分布在几个罐子之间。但看起来按钮在jre/lib/rt.jar中。

类文件实际上作为jar文件驻留在正在使用的Java发行版中。大多数文件都在rt.jar(运行时)中

大多数开发人员机器实际上安装了两种形式的Java。JDK(您在开发时经常使用它,它包括编译器)和JRE(由下载的基于Java的应用程序使用),以及您的web浏览器。这通常是两个相互不了解的独立分布。很不幸,你的问题的答案是,“取决于你正在运行的是什么”。更糟糕的是,JDK可能包含它自己的JRE副本

这是所谓的类路径地狱的来源之一,因为当您运行java程序时,并不总是清楚您在使用什么

如果从命令行运行java,有时可以检测到所使用的确切版本

如果您使用Eclipse,您可以选择您正在使用的JDK版本。

它们是两个不同的JVM安装。一个用于编译(JDK代表Java开发工具包) 另一个是大多数客户机器拥有的java环境(JRE代表java运行时环境)

在这两个文件中的任何一个上查找名为:

rt.jar

平台核心所在的位置。

您可以通过反射查看自己的任何类

例如,在类路径中哪里可以找到我的字符串类? 轻松的


只是澄清一下,非开发人员的机器通常有JRE,但没有JDK。看来她安装了JDK和JRE,并且JDK包含一个JRE,所以JRE/lib/rt.jar是不明确的
URL url = String.class.getResource("String.class");
System.out.println(url);