



Это генерирует Java код, который может быть выполнен с виртуальной машиной Java 5, если вы ничего не используете из системной библиотеки JRE, которая была введена после Java 5 (например, String#isEmpty(), для которого требуется Java 6 или выше).
На эту проблему указывает предупреждение, которое вы получите:
The compiler compliance specified is 1.5 but a JRE 1.8 is used
Для этой проблемы существует флаг компилятора --release (Проект> Свойства: Компилятор Java), который требует как минимум Java 9 JRE / JDK и Фотон затмения (4.8), а выбранная среда выполнения должна быть как минимум JavaSE-1.6 и не выше самой высокой доступной JRE / JDK (Окно> Настройки: Java> Установленные JRE) . Это означает, что в вашем случае вы также можете установить более новый JDK, чем Java 8 JDK, для написания кода Java 8, если вы не хотите использовать что-то, что было удалено из системной библиотеки JRE.
J2SE-1.5 означает режим совместимости (в данном случае с Java 1.5). См. oracle.com/technetwork/java/javase/…