Могу ли я установить java, но не Java SE?

У меня есть небольшой вопрос (просто из культурных соображений).

Можно ли загрузить и установить Java, но не стандартную версию?

Я знаю, что Java SE содержит базовые и полезные функции / библиотеки (например, ввод / вывод). Установка java без "SE", возможно, бесполезна и не интересна, но возможно ли это? если да, то как?

Большое спасибо,

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

user202729 20.10.2018 09:57

Вы имеете в виду все SE или просто некоторые SE? Поскольку все SE включает в себя такие вещи, как классы в java.lang, без которых программы Java не могут работать.

Slaw 20.10.2018 10:01

@ user202729 Можно ли "повторно" разработать все функции / библиотеки Java SE из Java "не SE"?

John Doe 20.10.2018 10:02

Вам нужно будет определить, что на самом деле означает «Java без SE». Для меня ваш вопрос в основном эквивалентен "можно ли пить молоко, но без буквы" k "?"

JB Nizet 20.10.2018 10:03

@Slaw Я имею в виду всю ЮВ. Могу ли я «переработать» концепцию классов? (только на Яве)?

John Doe 20.10.2018 10:03

Трудно сказать, где заканчивается часть «Java» и начинается часть «SE» ... Но если вы мог проведете линию где-нибудь и начнете с простой основы «только для Java», я вполне уверен, что вы Вы могли бы заново разработать часть «SE» с нуля и полностью на Java, если бы вы действительно этого хотели. Ты хочешь? У тебя есть время?

Kevin Anderson 20.10.2018 10:06
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
6
130
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Команда java традиционно берется из установки SE. Обычно в форме JRE, но иногда я являюсь вариантом JDK для опытных пользователей. Другие существуют, но не для настольных компьютеров.

Таким образом, с этой точки зрения вы не можете установить Java без SE.

(примечание: Java EE не является дистрибутивом как таковым, но API обычно предоставляется большими веб-серверами)

Ok. На самом деле мой вопрос может показаться глупым, но я новичок в JAVA. Насколько я понял, Java - это язык, который интерпретируется в его виртуальной машине (Java JRE). Так зачем мне java SE. На самом деле дело в том, что даже прочитав страницу википедии "java se", я больше ничего не понимаю. Не могли бы вы порекомендовать мне какие-нибудь страницы / книги? Большое спасибо !

John Doe 20.10.2018 10:14

Почему вы используете Windows 10, если вам не нужны 10, а нужны только окна? Для изучения java-учебника oracle - хорошее начало.

Thorbjørn Ravn Andersen 20.10.2018 10:48
Ответ принят как подходящий

Installing java without the "SE" is maybe useless and without any interest, but is it possible?

Это невозможно. Oracle не распространяет формы Java без библиотек.

Фактически, без библиотек (SE или ME) не бывает Java. Библиотеки являются частью платформы Java (tm). Если вам удалось создать что-то с языком Java и JVM, но с частичными, отсутствующими или несовместимыми библиотеками, вы не могли бы назвать это Java1. Oracle владеет товарным знаком Java, и они диктуют условия, на которых вам разрешено использовать его. Если вы использовали «Java» для комбинации JVM / Library, которая не проходит стандартные тесты совместимости с Java, вы, скорее всего, получите письмо «прекратить и воздерживаться» от юристов Oracle!

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

(И вы не можете просто 2 написать свою собственную замену для подмножества библиотеки Java SE, от которого зависит JVM. Есть много мест, где кодовая база C / C++ для OpenJDK JVM хорошо знакома с деталями реализации библиотек Java. все ... с нуля ... было бы сложно.)

Сказав это, в Java 9 они представили инструмент под названием jlink, который будет производить урезанную среду выполнения Java SE для приложения, которое содержит только библиотеки, которые требуются приложению. Вы можете прочитать об этом здесь.


1 - For example, the Sun vs Microsoft lawsuit over Microsoft's attempt to "embrace and extend" Java 1.1. See What does Sun's lawsuit against Microsoft mean for Java developers?

2 - It's not impossible. Just a lot of really hard work.

Can I install Java but not Java SE?

Установить? Нет. По крайней мере, не из «официальных» дистрибутивов, предоставляемых Oracle.

Why not?

Потому что Oracle не упаковывает это таким образом. Они предлагают 1) комплект для разработки Java SE (JDK), который позволяет вам создавать программы Java для себя, или 2) Java SE JRE, который просто позволяет вам запускать программы Java, созданные кем-то другим. Здесь нет 3) Ява без SE.

But couldn't they have given us option #3?

Мог у них есть? Наверное. Ладно, может быть. Сделали ли они?

But theoretically it's possible, right?

Теоретически, не понимаю почему. Теоретически, должно быть возможно создать «Java», которая будет немного больше, чем виртуальная машина и компилятор. Затем, теоретически, используя только этот язык Java, не относящийся к Java-SE, можно было либо реплицировать среду Java SE, либо разработать платформу разработки на основе Java совершенно новый.

Другие вопросы по теме