Можно ли запустить Java-приложение, имея только JRE?

«Можно ли запустить Java-приложение, имея только JRE?» — вопрос из категории Java Core, который задают на 10% собеседований Java Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, можно. JRE (Java Runtime Environment) содержит JVM и базовые библиотеки, необходимые для выполнения уже скомпилированных Java-программ (.class или .jar файлов).

Почему это работает: JRE включает в себя исполняющую среду (java), но не средства разработки (javac).

Пример запуска:

java -jar myapp.jar

или

java -cp . com.example.MainClass

Ограничения:

  • Для компиляции исходного кода (.java файлов) требуется JDK (Java Development Kit).
  • Приложения, использующие инструменты компиляции на лету (например, javax.tools.JavaCompiler), не запустятся.
  • Начиная с Java 11, Oracle чаще распространяет единый JDK-пакет, а отдельный JRE нужно собирать самостоятельно.