Ошибка: resource references are not supported at this language level

361
24 февраля 2017, 00:35

Пытаюсь скопилировать и запустить проект, но выдает ошибку: resource references are not supported at this language level.

В настройках у меня все выставлено так:

Я уже все настройки какие только можно менял, идею перезапускал, но ошибка не пропадает.

Answer 1

Конструкция try-with-resources работает с ресурсами, которые реализуют интерфейс AutoCloseable. Об этом говорится в документации. Метод Class.forName возвращает объект типа Class, который не реализует данный интерфейс.

Соответственно, использовать Class.forName в try-with-resources нельзя.

Более того, есть ещё одна проблема (хотя первой вполне достаточно для создания некомпилируемого кода): нельзя просто написать, например,

try (new FileReader("file.txt"))

Должно быть присваивание:

try (FileReader reader = new FileReader("file.txt"))

Код Class.forName должен быть внутри блока try:

try
{
    Class.forName("org.postgresql.Driver");
}
catch (ClassNotFoundException e)
{
    e.printStackTrace();
}
READ ALSO
Воспроизведение видео во фрагменте

Воспроизведение видео во фрагменте

Здравствуйтевозможно ли во фрагменте воспроизвести видео на surpfaceview?у меня приходт исключение nullpointer в mediaplayer setdata хотя в активити работает

300
галерея изображений в файловой системе java android

галерея изображений в файловой системе java android

Привет всем, я делал некое подобие файлового менеджера и хотел сделать так, чтобы все изображения просматривались как небольшие иконки вот...

210
Google аутентификация

Google аутентификация

Делаю аутентификацию для гугла через firebase, после выбора email ничего не происходитВ консоли 2 ошибки:

204