Я понимаю, что это еще не актуально на 100%, но мне это очень интересно. В JDK8 параметры javac «источник» и «цель» устарели и будут удалены в JDK9. Как разработчик JavaME, мне интересно, как тогда я смогу ориентироваться на более старые платформы. Например, я использую целевой 1.3 при разработке для Blu-ray. Как скомпилировать мои Xlets для Blu-ray, когда JDK9 отсутствует, если нет «целевого» варианта? Я полагаю, что также должны быть другие (хотя мы можем согласиться не так много) людей, которым все еще нужно ориентироваться на более старые устройства. Что нам делать, когда JDK9 отсутствует?Как ориентировать старые платформы с JDK9? (Цель: 1.3)
РЕДАКТИРОВАТЬ: Возможно ли даже установить таргетинг 1.3 с помощью JDK9?
Это хорошо новости, хотя немного озадачивает. Они удаляют «источник» и «цель», чтобы снизить стоимость обслуживания javac, а затем ввести другой параметр, который в основном делает то же самое? Ой, пока я могу скомпилировать мои Xlets в файл jar, совместимый с Blu-ray, тогда я счастлив. Полагаю, что время покажет, делает ли этот новый подход что-то другое, что делает мои файлы jar несовместимыми с спецификациями Blu-ray. –
Из JEP: «По умолчанию javac компилируется против самой последней версии API-интерфейсов платформы. Поэтому скомпилированная программа может случайно использовать API-интерфейсы, доступные только в текущей версии платформы. Такие программы не могут работать в более старых версиях платформы, независимо от значений, переданных параметрам -source и -target.Это долгосрочная точка удобства использования, так как пользователи ожидают, что, используя эти параметры, они получат файлы классов, которые могут выполняться на указанной версии платформы ». – Jay
Просто хочу быть ясным, что новый флаг имеет очень специфическую причину, и что это улучшение по сравнению с оригинальными флагами. Они не просто меняют вещи, потому что им это нравится :) – Jay