2015-05-25 1 views
3

Я недавно обновил свой JDK версии до 8. У меня есть кусок кода, который выглядит как:После обновления до JDK8, ошибка компиляции происходит в JSP: «Тип java.lang.CharSequence не может быть решена»

 StringBuilder abc = new StringBuilder(); 
    abc.append("123"); 

, когда я запускаю это, он бросает ошибку:

The type java.lang.CharSequence cannot be resolved. It is indirectly referenced from required .class files 

Я обновил все зависимости JDK, но отмечая помогли.

+2

Покажите нам свой импорт. –

+2

Возможный дубликат [Тип java.lang.CharSequence не может быть разрешен в объявлении пакета] (http://stackoverflow.com/questions/24301986/the-type-java-lang-charsequence-cannot-be-resolved-in- package-declaration) – haifzhan

+0

Как вы компилируете? Каков уровень соответствия вашего компилятора проекта? –

ответ

3

Я просто пострадал вчера. Это потому, что ваш сервер (tomcat, я думаю?) Не поддерживает Java 8 (для вашей версии).

Известно, что tomcat6 и некоторые из первой версии tomcat7 не поддерживают Java 8. Вы должны обновить свой сервер или скомпилировать его обратно с Java 7.

Из ссылки я оставляю ниже, Brett Bryan сказал:

I can confirm that apache-tomcat-7.0.35 does NOT have support for JDK8, I can also confirm that apache-tomcat-7.0.50 DOES have support for JDK8.

Ссылка: Unable to compile class for JSP: The type java.util.Map$Entry cannot be resolved. It is indirectly referenced from required .class files

+0

та же проблема на моей стороне, у меня был jdk8 в моем затмении, и запуск моего приложения был свободен, после переключения обратно в jkd7 все отлично работает –

0

меня лицом подобной проблемы в Обновление java до версии 1.8. Эта проблема связана с использованием более низкой версии сервлета api (< 3.0).

Решение: 1: либо ухудшить Java 8 до Java v7 , либо 2: обновить версию api сервлета до версии 3.0 или выше.

+0

Я только что обновил версию сервлета до версии 3.1, но не работал. Требуется также модернизировать причал. Мой старый причал имеет версию 6.5. Нужно ли обновляться до Jetty 9? – vibhas

+0

Да Вам необходимо привести сервер приложений/контейнер, совместимый с последней спецификацией. –

Смежные вопросы