Java Development Kit (сокращенно JDK) — бесплатно распространяемый компанией Oracle Corporation (ранее Sun Microsystems) комплект разработчика приложений на языке Java, включающий в себя компилятор Java (javac), стандартные библиотеки классов Java, примеры, документацию, различные утилиты и исполнительную систему Java (JRE).
Java Runtime Environment (сокр. JRE; русск. среда выполнения для Java) — минимальная реализация виртуальной машины, необходимая для исполнения Java-приложений, без компилятора и других средств разработки. Состоит из виртуальной машины — Java Virtual Machine — и библиотеки Java-классов.
Так как понять всё-таки, JRE это исполнительная система Java или это среда выполнения для Java? В JDK одно написано, в JRE другое. Весь материал взят из Википедии.
Источник: ru.stackoverflow.com
02 — Как работает Java приложение? Что такое JVM, JRE, JDK? — Уроки Java для начинающих
В чем разница между JDK и JRE
JRE( Java Runtime Environment ) — это среда выполнения Java. JRE предназначена для пользователей. JRE позволяет запускать аплеты и приложения написанные на Java. JRE можно бесплатно загрузить с сайта java.com
JDK(Java Development Kit) — стандартная версия платформы Java. JDK предназначена для разработки. JDK — это специальный пакет разработчика, включающий в себя документацию, различные библиотеки классов, утилиты, документацию, компилятор а также саму исполнительную систему JRE.
В технологии JAVA существует несколько основных направлений:
Java Enterprise Edition (сокращенно Java EE или J2EE) — технология создания программного обеспечения уровня больших корпораций.
Java Standart Edition(сокращенно Java SE или J2SE) — технология создания пользовательских приложений.
Java Micro Edition(сокращенно Java ME или J2ME) — технология создания приложений для мобильных телефонов, карманных персональных компьютеров и других маломощных вычислительных систем.
Java Card — технология для устройства типа смарт-карт.
Для каждой из них есть свой JDK, мы будем использовать JDK от JSE, стандартный дистрибутив JAVA.
Распространяется он бесплатно компаний Oracle. И скачать его можно по ссылке http://www.oracle.com/technetwork/java/javase/downloads/index.html
Последняя версия на момент написания JDK 7u9
Переходим по ссылке вверху
Нажимаем на саму. первую иконку Java Platform (JDK) 7u9
Далее появится список дистрибутивов, ставим Accept License Agreementи выбираем свой в зависимости от вашей операционной системы.
Java SE. Урок 2.Что такое JDK,JRE,JVM и компилятор? Порядок выполнения программы
Далее воспроизводим процедуру стандартной установки.
В итоге у вас должно получиться что то типа этого:
Далее можем прописать путь к JDK в переменной окружения.
Для этого (В windows 7) Щелкаем правой кнопкой мыши на «Мой компьютер» — «Свойства» —
«Дополнительные параметры системы» —- переключаемся на вкладку « Дополнительно» —- нажимаем на «Переменные среды» в открывшемся окне в «системные переменные» нажимаем «Создать», в имя переменной пишем JAVA_HOME в значении переменной C:Program FilesJavajdk1.7.0_07 ( указываем путь куда вы установили JDK) Нажимаем «Ок»
Далее ищем в списке системных переменных, переменную «Path» щелкаем по ней, вписываем туда дополнительный путь C:Program FilesJavajdk1.7.0_07bin», нажимаем «Ок»
Большинство начинающих Java программистов сразу начинают изучать основные конструкции языка, синтаксис и правила не задумываясь о том, что такое JDK , JRE и JVM . Они просто упускают этот вопрос так и не разобравшись чем отличаются и для чего предназначены JDK , JRE и JVM . Поэтому в этой статье я попытаюсь объяснить разницу между этими концепциями языка Java.
В двух словах о JDK, JRE и JVM
- JDK нужен для разработки (это компилятор, отладчик и т.д.).
- JRE нужен для запуска Java программ (содержит в себе JVM).
- JDK и JRE содержат JVM, которая нужна для запуска программ на Java.
- JVM является сердцем языка программирования Java и обеспечивает независимость от платформы.
Что такое Java Development Kit (JDK)?
Java Development Kit является основным компонентом среды Java и предоставляет все инструменты, исполняемые и бинарные файлы, которые нужны для компиляции, отладки и выполнения программы на Java. JDK является платформо-зависимым программным обеспечением, поэтому есть отдельные инсталляторы для Windows, Mac и Unix-систем. Можно сказать, что JDK является надстройкой JRE , так как он содержит JRE с Java-компилятором, отладчиком и базовыми классами. Текущая версия JDK 1.8 также известна как Java 8.
Что такое Виртуальная машина Java (JVM)?
JVM является сердцем языка программирования Java. Когда мы запускаем программу, JVM несет ответственность за преобразование байт-кода в машинный код. JVM также зависит от платформы и предоставляет основные функции, такие как управления памятью Java, сборкой мусора, и т.д. Мы также можем выделять определенный объем памяти для JVM. JVM является виртуальной машиной, потому что обеспечивает интерфейс, который не зависит от операционной системы и аппаратных средств. Эта независимость от аппаратного обеспечения и операционной системы дает Java-программам возможность выполняться на любом устройстве без необходимости внесения изменений — Write once, run anywhere (Напиши раз — запускай где угодно) .
Что такое Java Runtime Environment (JRE)?
JRE является реализацией JVM , которая предоставляет платформу для выполнения Java-программ. JRE состоит из виртуальной машины Java, бинарных файлов и других классов. JRE не содержит инструменты для разработки (компилятор Java, отладчик и т.д). Если вы хотите запустить любую Java программу, вы должны установить JRE .
Just-in-time Compiler (JIT) в Java
Just-in-time Compiler (JIT) является частью JVM. Он оптимизирует байт-код, уменьшая общее время, необходимое для компиляции байт-кода в машинный код.
Java кроссплатформенный объектно-ориентированный язык программирования. Кроссплатформенность это основное преимущество Java перед другими языками. Этого удалось добиться благодаря использованию собственной виртуальной машины. Приложения, разработанные и скомпилированные под Java представлены в виде специального байт-кода, которой идеально заточен под виртуальную машину Java и не зависит от компьютерной архитектуры и разрядности ОС. В Sun, а затем в Oracle позаботились о том, что бы виртуальные машины были доступны практически для всех ОС.
Не стоит путать Java с JavaScript, это совершенно разные языки программирования, у них различный синтаксис, различные подходы к интерпретации и даже различные области применения.
Виртуальная машина поставляется в 2-х вариантах:
- JRE (Java Runtime Enviroment) — виртуальная машина Java, способная выполнить любое скомпилированное в байт-код приложение на языке Java. Виртуальная машина хоть и описывает суть происходящего, но может звучать не очень понятно. JRE с большой натяжкой можно назвать фреймворком. Это некий набор библиотек, достаточный для запуска любого Java-приложения, даже Minecraft.
- JDK (Java Developer Kit) — та-же виртуальная машина Java, но дополненная компилятором. Проще говоря, это достаточный комплект для разработки приложения любой сложности и его выполнения. JDK включает в свой набор JRE. Для разработки выбираем этот вариант.
Oracle не хочет денег за свой продукт, JRE и JDK свободно распространяются на сайте разработчика: http://www.oracle.com/technetwork/java/javase/downloads/index.html
JVM и JRE
Java — это высокоуровневый язык программирования, который уникален тем, как написанные на нем программы могут выполняться практически на любой платформе. Но прежде чем вы сможете запустить программу на компьютере, вам необходимо установить определенное программное обеспечение; некоторые люди называют это JVM, в то время как другие используют JRE. Хотя большинство людей ссылаются на одно и то же, существуют определенные различия между JVM и JRE. JVM на самом деле является приложением, которое является частью JRE. Для запуска приложения вам нужна JRE, которая содержит JVM.
JVM выступает за виртуальную машину Java и создает виртуальный компьютер, который понимает код, с которым написаны Java-программы. Программы Java не написаны специфично для ОС. Это позволяет ему работать на любой платформе, но требует использования JVM для преобразования команд из байт-кода Java в конкретный машинный код.
Не все, что необходимо для всех программ, содержится в JVM. Некоторые из них расположены в так называемых классах пакетов. Пакеты, такие как AWT, Swing, lang и многие другие, предоставляют более сложные возможности JVM. Когда вы объединяете все эти поддерживающие файлы вместе с JVM, это то, что называется JRE или Java Runtime Environment. Проще говоря, JRE представляет собой комбинацию JVM и многих поддерживающих файлов, таких как пакеты, предоставляющие среду, из которой может работать Java-программа.
Поскольку конечный пользователь не может редактировать или создавать приложения Java, JRE не содержит файлов, связанных с кодированием, проверкой и отладкой приложений Java; все, что находится в другом программном пакете Java. Это минимизирует размер JRE, чтобы сделать его проще и быстрее для большинства пользователей для загрузки и установки JRE. Каждая программная платформа (то есть Windows, Linux, Mac) имеет собственную JRE и JVM, которая будет работать только над ней и ни в каком другом. Поэтому вы должны помнить о загрузке конкретной JRE для ОС, которая у вас есть. Каждая версия JRE всегда будет содержать свою дополнительную JVM, поэтому нет сомнений в том, что вы ошибаетесь в JVM.
1.JVM — это только одна часть JRE 2.JRE содержит классы Java-пакетов, кроме JVM
Источник: ru.esdifferent.com