Оператор multi-catch не поддерживается в -source 1.6 (используйте -source 7 или выше, чтобы включить оператор multi-catch)
Я запускаю компиляцию на Jenkins, используя maven 3.3.9. Я получаю эту ошибку в некотором коде, но не во всех:
оператор multi-catch не поддерживается в -source 1.6 (используйте -source 7 или выше, чтобы включить оператор multi-catch)
Я компилирую с Java 8:
Выполнение Maven: -B -f /opt/jenkins/workspace/product/product-Content-Operations_RELEASE/pom.xml -s /opt/jenkins/maven/settings.xml очистить развертывание -U -X -rf: crawlers-module
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T08: 41: 47-08: 00)
Дом Maven: /opt/apache-maven-3.3.9
Версия Java: 1.8.0_92, поставщик: корпорация Oracle
Домашняя страница Java: /usr/java/jdk1.8.0_92/jre
Локаль по умолчанию: en_US, кодировка платформы: ANSI_X3.4-1968
Название ОС: "linux", версия: "2.6.18-371.el5", arch: "amd64", семейство: "unix"
Я убедился, что он использует Java 8 из командной строки.
Кто-нибудь работал над этим? Я в тупике.
1 ответ
Угадайте: где-то глубоко в настройках компиляции вы фактически заставляете -source 1.6
Итак, да, вы используете JDK 1.8; но ваша установка хочет ограничиться Java 1.6; и это, конечно, не работает; так как "multi-catch" является "слишком новым" для Java 1.6.
Поэтому я бы начал искать именно такие строки, как "1.6" в ваших файлах конфигурации сборки (и вывода).