如果我们有一个独立的常规JRE,那么我们总是可以运行java程序但是我们不能创建java程序。我知道当你安装JDK时,包含了JRE。但只是为了清楚地理解这一点,在内部反过来也是如此。如果我有一个java程序,并且我只需要从中创建一个.class文件,那么JRE是否可以在其中扮演任何角色;是编译过程中涉及的JRE的任何组成部分,例如“import<>。<>。*”语句等。?
答案 0 :(得分:3)
JRE(Java运行时环境)与许多组件一致,最重要的三个是:
java.exe
(使用上述组件运行自定义Java代码的Windows 1 可执行文件)JDK(Java Development Kit)与许多组件一致,最重要的三个是:
javac.exe
(用于运行编译器的Windows 1 可执行文件)所以,关于主要问题:
JRE是否需要编译 Java程序?
嗯,不。编译Java程序只需要两件事:
如果编译器本身不是用Java编写的,那么就不需要JDK或JRE。
但是,大多数Java编译器实际上都是用Java编写的,所以它们也需要一个JVM,如果你需要JVM和运行时库,获得它们的最好方法是获取JRE,尽管任何JVM都可以
那么,你需要JDK吗?不,你只需要一个JRE和一个编译器,那里有许多好的编译器,例如Eclipse编译器,这是Tomcat使用的,因此它不需要完整的JDK。
1)对于非Windows,当然是类似的java
可执行文件。
答案 1 :(得分:1)
当你需要编译时,你只需要JDK,但是当你运行程序时,它需要JRE。如果程序需要在运行时编译,那么它需要两者。如果您只是编译程序,那么您只需要JDK,但是如果您的编译器是由java构建的,那么您需要JRE。这篇文章可以帮助Are both the JRE and the JDK required to run a JAR file?。