Версия jre в проекте на java. Иллюстрированный самоучитель по Java

«Java runtime что это за программа» — речь идёт о программе, которая у большинства пользователей вызывает вопросы по весьма объективным причинам. Дело в том, что мало кто её ставит отдельно на компьютер. У большинства она устанавливается сама, то есть, берётся неизвестно от куда. Оттуда и возникают вопросы.

Это объясняется тем, что пользователи привыкли к тому, что так на компьютеры проникают вирусы, а аж никак не полезные программы. Но это не тот случай. А почему происходит именно так, мы постараемся вам объяснить в нашей статье, чтобы у Вам не осталось никаких сомнений и все страхи ушли прочь.

Стоит, наверное, начать с того, что же такое Java. Это один из самых популярных языков программирования, который используется при разработке приложений в очень разных сферах и реализациях. Выпущен он был ещё в далёком 1995-ом году, потому не стоит удивляться тому, что просто огромное количество популярных программ написаны именно на Java.

Для запуска программ, которые написаны на этом замечательном языке программирования необходим компилятор или специальное программное обеспечение. Как раз одно из таких приложений и является героем этой статьи. Почему же оно вызывает столько вопрос и такую неоднозначную реакцию на себя мы с удовольствием объясним дальше.

Java Runtime Environment что это за программа

То, что без специального обеспечения программы написанные на Java не запустятся, разработчики знают и прекрасно понимают. Стоит им сделать комплимент, потому что в этом направлении они поработали очень результативно. Потому, чтобы лишний раз не усложнять жизнь пользователей, они включили установку необходимого ПО в установку большинства программ на Java.

Единственное, о чём они не подумали, так это то, что большинство вирусов сейчас попадают в системы пользователей абсолютно тем же путём. Потому программа, которая самовольно установилась в систему не может не вызывать подозрений.

Теперь, когда Вы знаете, что же это за программа — Java Runtime Environment, понимаете, что не стоит её удалять, если хотите, что бы все приложения на Java работали.

Говоря о языке программирования Java можно часто увидеть такие аббревиатуры как: Java SE, JRE, JDK, IDE. Рассмотрим их.

Java SE

Java Standard Edition (Java SE) - это стандартное издание Java, именно под него разрабатываются клиентские приложения и этот сайт полностью посвящён Java SE. Приложения могут работать самостоятельно или в качестве апплетов веб-браузера.

Кроме стандартного издания бывают:

  • Java Enterprise Edition (Java EE) для разработки приложений на стороне сервера, таких как Java сервлеты, JavaServer Pages (JSP) и JavaServer Faces (JSF).
  • Java Micro Edition (Java ME) для разработки приложений под мобильные устройства, такие как телефоны.

JRE

Java Runtime Environment - среда выполнения Java. Это виртуальная машина Java, необходимая для запуска Java программ на компьютерах пользователя. В ней имеется всё, что необходимо для запуска Java приложений на вашей системе. JRE охватывает нужды большинства пользователей.

JDK

JDK (Java SE Development Kit) - набор инструментов разработчика для создания программ на Java. Включает в себя JRE плюс инструменты для разработки, отладки и мониторинга Java приложений.

Итак, чтобы определиться, что скачивать: JRE или JDK? Ответьте на вопрос: вы хотите только запускать Java программы или ещё и разрабатывать их? Если только запускать, то вам достаточно JRE. Если вы хотите разрабатывать программы, то вам необходим JDK. Набор разработчика JDK уже включает JRE, поэтому нет необходимости скачивать их оба по отдельности.

Версии Java

Кроме рассмотренных различных изданий, а также разных версий пакетов (для конечного пользователя и для разработчика), имеются номерные версии. В настоящее время актуальной является версия JDK 1.10 . Кстати, JDK 1.10 = JDK 10.

Если вас интересуют ранние выпуски (что-то вроде беты), то для одинадцатой версии вы их найдёте по адресу

IDE

IDE (integrated development environment) - интегрированная среда разработки, предназначена для содействия разработчику, ускоряет процесс разработки программ. Обычно включает в себя редактор с подсветкой синтаксиса, справкой, автоматизированной компиляцией и запуском программ. IDE может быть создана для любого языка программирования, либо для конкретного языка, например, для Java. Интегрированная среды разработки бывают бесплатными и платными. Хорошей бесплатной IDE для Java является NetBeans.

20 ответов

JRE - это среда выполнения Java . Это пакет всего необходимого для запуска скомпилированной Java-программы, включая виртуальную машину Java (JVM), библиотеку классов Java, команду java и другую инфраструктуру. Однако его нельзя использовать для создания новых программ.

JDK - это Java Development Kit , полнофункциональный SDK для Java. В нем есть все, что есть в JRE, а также компилятор (javac) и инструменты (такие как javadoc и jdb). Он способен создавать и компилировать программы.

Обычно, если вы заботитесь только о запуске программ Java на компьютере, вы устанавливаете только JRE. Это все, что вам нужно. С другой стороны, если вы планируете заняться программированием на Java, вам нужно вместо этого установить JDK.

Иногда, даже если вы не планируете заниматься разработкой Java на компьютере, вам все равно нужно установить JDK. Например, если вы развертываете веб-приложение с JSP, технически вы просто запускаете Java-программы на сервере приложений. Зачем вам тогда JDK? Потому что сервер приложений преобразует JSP в сервлеты Java и должен использовать JDK для компиляции сервлетов. Я уверен, что будет больше примеров.

Ответ выше (Пабло) очень правильный. Это просто дополнительная информация.

JRE , как следует из названия, является окружающей средой. Это в основном набор каталогов с Java файлами, например:

  • bin/ содержит исполняемые программы Java. Наиболее важным является java (и для Windows, а также javaw), который запускает JVM. Есть некоторые другие утилиты здесь, а также, например, keytool и policytool .
  • conf/ содержит редактируемые пользователем файлы конфигурации для экспертов по Java.
  • lib/ имеет большое количество вспомогательных файлов: некоторые файлы.jar , файлы конфигурации, файлы свойств, шрифты, переводы, сертификаты и т.д. - все это "обрезки" Java. Наиболее важными являются modules , файл, который содержит.class стандартной библиотеки Java.
  • На определенном уровне стандартная библиотека Java должна вызывать нативный код. Для этой цели JRE содержит некоторые.dll (Windows) или.dylib (macOS) или.so (Linux) в bin/ или lib/ с поддерживаемым системным двоичным кодом.

JDK также представляет собой набор каталогов. Это расширенная версия JRE с некоторыми дополнениями:

JDK является надмножеством JRE и содержит все, что есть в JRE, а также такие инструменты, как компиляторы и отладчики, необходимые для разработки апплетов и приложений. JRE предоставляет библиотеки, виртуальную машину Java (JVM) и другие компоненты для запуска апплетов и приложений, написанных на языке программирования Java.

С точки зрения непрофессионала: JDK - дедушка, JRE - отец, а JVM - их сын. [т.е. JDK> JRE> JVM]

JDK = JRE + Инструменты разработки/отладки

JRE = JVM + Java Packages Классы (например, util, math, lang, awt, swing и т.д.) Библиотеки +runtime.

JVM = система загрузчика классов + область данных времени выполнения + механизм выполнения.

Другими словами, если вы Java-программист, вам понадобится JDK в вашей системе, и этот пакет будет также включать JRE и JVM, но если вы обычный пользователь, который любит играть в онлайн-игры, то вам понадобится только JRE, и этот пакет не будет иметь JDK в этом.

Виртуальная машина Java (JVM) - это виртуальная машина, на которой выполняются байт-коды Java. JVM не понимает исходный код Java, поэтому вы компилируете свои файлы *.java для получения файлов *.class, которые содержат байтовые коды, понятные для JVM. Это также сущность, которая позволяет Java быть "переносимым языком" (писать один раз, запускать где угодно). Действительно, существуют конкретные реализации JVM для разных систем (Windows, Linux, MacOS, см. Список википедии...), цель состоит в том, чтобы с одинаковыми байт-кодами все они давали одинаковые результаты.

JDK и JRE

Чтобы объяснить разницу между JDK и JRE, лучше всего прочитать документацию Oracle и обратиться к диаграмме:

Java Runtime Environment (JRE)

Java Runtime Environment (JRE) предоставляет библиотеки, виртуальную машину Java и другие компоненты для запуска апплетов и приложений, написанных на языке программирования Java. Кроме того, в JRE входят две ключевые технологии развертывания: Java-плагин, который позволяет апплетам работать в популярных браузерах; и Java Web Start, который развертывает автономные приложения по сети. Это также основа для технологий в Java 2 Platform, Enterprise Edition (J2EE) для разработки и развертывания программного обеспечения для предприятий. JRE не содержит инструментов и утилит, таких как компиляторы или отладчики для разработки апплетов и приложений.

Java Development Kit (JDK)

JDK является расширенным набором JRE и содержит все, что есть в JRE, а также такие инструменты, как компиляторы и отладчики, необходимые для разработки апплетов и приложений.

Обратите внимание, что Oracle не единственный, кто предоставляет JDK.

От официального веб-сайта java...

JRE (среда выполнения Java):

  • Это реализация виртуальной машины Java *, которая фактически выполняет Java-программы.
  • Java Runtime Environment - это плагин, необходимый для запуска Java-программ.
  • JRE меньше JDK, поэтому ему требуется меньше места на диске.
  • JRE можно свободно скачивать/поддерживать https://www.java.com
  • Он включает библиотеки JVM, Core и другие дополнительные компоненты для запуска приложений и апплетов, написанных на Java.

JDK (Java Development Kit)

Одно отличие от перспективы отладки:

Для отладки в системных классах Java, таких как String и ArrayList, вам нужна специальная версия JRE, которая скомпилирована с "отладочной информацией". JRE, включенный в JDK, предоставляет эту информацию, но обычный JRE этого не делает. Регулярная JRE не включает эту информацию, чтобы обеспечить лучшую производительность.

Что такое отладочная информация? Вот краткое объяснение, взятое из этого сообщения в блоге :

Современные компиляторы делают довольно хорошую работу, преобразуя ваш высокоуровневый код, с его красивыми отложенными и вложенными структурами управления и произвольно типизированными переменными в большую кучу бит, называемых машинным кодом (или байт-кодом в случае Java), единственной целью из которых следует запускать как можно быстрее на целевом CPU (виртуальный процессор вашего JVM). Код Java преобразуется в несколько инструкций машинного кода. Переменные перемещаются по всему месту - в стек, в регистры или полностью оптимизированы. Структуры и объекты даже не существуют в полученном коде - они просто абстракция который переводится в жестко закодированные смещения в буферы памяти.

Итак, как отладчик знает, где остановиться, когда вы просите его разбить на запись на какую-то функцию? Как вам удается найти, что вам показать, когда вы задаете ему значение переменной? Ответ - отладка информации.

Отладочная информация генерируется компилятором вместе с машинным кодом. Это представление отношения между исполняемой программой и исходным исходным кодом. Эта информация кодируется в заранее определенный формат и сохраняется вместе с машинным кодом. Многие из таких форматов были изобретены на протяжении многих лет для разных платформ и исполняемых файлов.

JRE является аббревиатурой для Java Runtime Environment.It используется для обеспечения среды выполнения. Это реализация JVM.It физически существует. Она содержит набор библиотек и других файлов, которые JVM использует во время выполнения.

JDK является акронимом для Java Development Kit. Он физически существует. Он содержит инструменты разработки JRE +.

Обычно, когда вы только заботитесь о запуске программ Java в своем браузере или компьютере, вы будете устанавливать только JRE. Это все, что вам нужно. С другой стороны, если вы планируете выполнять некоторые Java-программирования, вам также понадобится JDK.

JVM, JRE и JDK зависят от платформы, поскольку конфигурация каждой ОС отличается. Но Java не зависит от платформы.

Java Virtual Machine (JVM) - это система времени выполнения, которая выполняет байт-код Java.

JRE - это среда (стандартные библиотеки и JVM), необходимые для запуска приложений Java.

Java R Runtime Environment (JRE)

JRE предоставляет библиотеки, виртуальную машину Java и другие компоненты, необходимые для запуска апплетов и приложений, написанных на языке программирования Java. Эта среда выполнения может быть перераспределена с помощью приложений, чтобы сделать их независимыми.

Java Development Development Kit (JDK)

JDK включает инструменты разработки командной строки JRE plus, такие как компиляторы и отладчики, которые необходимы или полезны для разработки апплетов и приложений.

Если вы хотите запускать Java-программы, но не разрабатывать их, загрузите среду выполнения Java или JRE. Если вы хотите их развить, загрузите Java Development Kit или JDK

JDK

Пусть называемый JDK - это набор, который включает в себя то, что нужно для разработки и запуска приложений Java.

JDK предоставляется как среда разработки для создания приложений, компонентов и апплетов.

JRE

Он содержит все необходимое для запуска приложений Java в скомпилированной форме. Вам не нужны библиотеки и другие материалы. Все, что вам нужно, составлено.

JVM, JRE, JDK - все это основа языка Java. Каждый компонент работает отдельно. Jdk и Jre физически существуют, но Jvm - это абстрактная машина, то есть физически не существует.

JVM - это подсистема JDK и JRE, которые используют для проверки промежуточного кода, известного как байт-код. Сначала он загружает "файл класса", имеющий расширение.c, сгенерированное компилятором Java (Javac) через загрузчик классов подсистемы JVM, и классифицирует расположение памяти (регистры области классов, стека, кучи и компьютера) в соответствии с их использованием. Затем проверьте весь байт-код, чтобы убедиться, что он возвращается в java, и доступ к памяти для всей сети. После начала работы интерпретатора интерпретатор проверяет всю строку программы по строке и, наконец, результат отображается в консоли, браузере и приложении через JRE (Java Runtime Environment), которая предоставляет средства выполнения.

JRE также является подсистемой JDK, которая предоставляет средства выполнения, такие как JVM, классы, исполняемый файл, например.jar, и т.д.

JDK - это Java Development Kit, содержащий все необходимые компоненты, которые используются в программировании, такие как класс, методы, Swing, AWT, пакет, java (интерпретатор), javac (компилятор), appletviewer (просмотрщик приложений апплета) и т.д. Итак, окончательный вывод - это содержание каждого файл, который полезен при разработке приложения, автономного или веб-приложения.

Если вы Java-программист, вам понадобится JDK в вашей системе, и этот пакет будет также включать JRE и JVM, но если вы обычный пользователь, который любит играть в онлайн-игры, то вам понадобится только JRE, и в этом пакете не будет JDK.,

JVM (виртуальная машина Java) - это абстрактная машина. Это спецификация, которая обеспечивает среду выполнения, в которой может быть выполнен байт-код Java.

JVM доступны для многих аппаратных и программных платформ. JVM, JRE и JDK зависят от платформы, поскольку конфигурация каждой ОС отличается. Но Java не зависит от платформы.

Он содержит все необходимое для запуска приложений Java в скомпилированном виде. Вам не нужно никаких библиотек и прочего. Все, что вам нужно, скомпилировано.

JRE не может использоваться для разработки, используется только для запуска приложений.

Java SE Development Kit (JDK)

JDK включает в себя инструменты разработки командной строки JRE plus, такие как компиляторы и отладчики, которые необходимы или полезны для разработки апплетов и приложений.

Четкое понимание этих терминов (JVM, JDK, JRE) необходимо для понимания их использования и различий.

JVM Java Virtual Machine (JVM) - это система времени выполнения, которая выполняет байт-код Java. JVM похожа на виртуальный компьютер, который может выполнять набор скомпилированных инструкций и манипулировать областями памяти. Когда компилятор Java компилирует исходный код, он генерирует высокооптимизированный набор инструкций, называемый байт-кодом, в файле.class. JVM интерпретирует эти инструкции байт-кода и преобразует их в машинный код для выполнения.

>> Что такое JRE?

Обучающие курсы:

Что такое JRE?

Что такое JRE?

JRE - это Java Runtime Environment. В переводе по русски JRE - это среда выполнения для языка Java. Это минимальная реализация виртуальной машины, необходимая для исполнения Java-приложений, без компилятора и других средств разработки. JRE состоит из виртуальной машины - Java Virtual Machine - и библиотеки Java-классов.

Скачать JRE с официального сайта: http://www.oracle.com/technetwork/articles/javase/index-jsp-138363.html

JRE распространяется свободно и для большинства платформ может быть загружена с сайта Oracle.

Набор программ и пакетов классов JRE содержит все необходимое для выполнения байт-кодов,в том числе интерпретатор java (в прежних версиях - облегченный интерпретатор jre) и библиотеку классов. Это часть JDK, не содержащая компиляторы, отладчики и другие средства разработки. Именно Oracle JRE или его аналог, созданный другими фирмами, присутствует в тех браузерах, которые умеют выполнять программы на Java, в операционных системах и системах управления базами данных.

Хотя JRE входит в состав JDK, корпорация Oracle распространяет этот набор и отдельным файлом.

Чем отличается JRE, JVM и JDK?

jvm - Java Virtual Machine - среда ("виртуальная"), в которой выполняется скомпилированный код

jre - Java Runtime Environment. Это просто пакет, который включает в себя JVM и минимальный набор библиотек для работы программ. И еще браузерный плагин, где будут выполняться апплеты.

Набор программ и классов JDK содержит:

  • компилятор javac из исходного текста в байт-коды;
  • интерпретатор java , содержащий реализацию JVM;
  • облегченный интерпретатор jre (в последних версиях отсутствует);
  • программу просмотра апплетов appietviewer , заменяющую браузер;
  • отладчик jdt> ;
  • дизассемблер javap ;
  • программу архивации и сжатия jar ;
  • программу сбора документации javadoc ;
  • программу javah генерации заголовочных файлов языка С;
  • программу javakey добавления электронной подписи;
  • программу native2ascii , преобразующую бинарные файлы в текстовые;
  • программы rmic и rmiregistry для работы с удаленными объектами;
  • программу seriaiver , определяющую номер версии класса;
  • библиотеки и заголовочные файлы "родных" методов;
  • библиотеку классов Java API (Application Programming Interface).

В прежние версии JDK включались и отладочные варианты исполнимых программ: javac_g , java_g и т. д.

Компания SUN Microsystems постоянно развивает и обновляет JDK, каждый год появляются новые версии.

В 1996 г. была выпущена первая версия JDK 1.0, которая модифицировалась до версии с номером 1.0.2. В этой версии библиотека классов Java API содержала 8 пакетов. Весь набор JDK 1.0.2 поставлялся в упакованном виде в одном файле размером около 5 Мбайт, а после распаковки занимал около 8 Мбайт на диске.

В 1997 г. появилась версия JDK 1.1, последняя ее модификация, 1.1.8, выпущена в 1998 г. В этой версии было 23 пакета классов, занимала она 8.5 Мбайт в упакованном виде и около 30 Мбайт на диске.

В первых версиях JDK все пакеты библиотеки Java API были упакованы в один архивный файл classes.zip и вызывались непосредственно из этого архива, его не нужно распаковывать.

Затем набор инструментальных средств JDK был сильно переработан.

Версия JDK 1.2 вышла в декабре 1998 г. и содержала уже 57 пакетов классов. В архивном виде это файл размером почти 20 Мбайт и еще отдельный файл размером более 17 Мбайт с упакованной документацией. Полная версия располагается на 130 Мбайтах дискового пространства, из них около 80 Мбайт занимает документация.

Начиная с этой версии, все продукты технологии Java собственного производства компания SUN стала называть Java 2 Platform, Standard Edition , сокращенно J2SE, a JDK переименовала в Java 2 SDK, Standard Edition (Software Development Kit), сокращенно J2SDK, поскольку выпускается еще Java 2 SDK Enterprise Edition и Java 2 SDK Micro Edition . Впрочем, сама компания SUN часто пользуется и старым названием, а в литературе утвердилось название Java 2.

Кроме 57 пакетов классов, обязательных на любой платформе и получивших название Core API , в Java 2 SDK vl.2 входят еще дополнительные пакеты классов, называемые Standard Extension API. В версии Java 2 SDK SE, vl.3, вышедшей в 2000 г., уже 76 пакетов классов, составляющих Core API. В упакованном виде это файл размером около 30 Мбайт, и еще файл с упакованной документацией размером 23 Мбайта. Все это распаковывается в 210 Мбайт дискового пространства. Эта версия требует процессор Pentium 166 и выше и не менее 32 Мбайт оперативной памяти.

В настоящее время версия JDK 1.0.2 уже не используется. Версия JDK 1.1.5 с графической библиотекой AWT встроена в популярные браузеры Internet Explorer 5.0 и Netscape Communicator 4.7, поэтому она применяется для создания апплетов. Технология Java 2 широко используется на серверах и в клиент-серверных системах.

Кроме JDK, компания SUN отдельно распространяет еще и набор JRE (Java Runtime Environment).

Что такое JRE

Набор программ и пакетов классов JRE содержит все необходимое для выполнения байт-кодов, в том числе интерпретатор java (в прежних версиях облегченный интерпретатор jre ) и библиотеку классов. Это часть JDK, не содержащая компиляторы, отладчики и другие средства разработки. Именно JRE или его аналог других фирм содержится в браузерах, умеющих выполнять программы на Java, операционных системах и системах управления базами данных.

Хотя JRE входит в состав JDK, фирма SUN распространяет этот набор и отдельным файлом.

Версия JRE 1.3.0 - это архивный файл размером около 8 Мбайт, разворачивающийся в 20 Мбайт на диске.