Спецификация ресурсов не разрешена здесь для исходного уровня ниже 1.7

#java #compiler-errors #try-with-resources

#java #ошибки компилятора #попробуйте-с-ресурсами

Вопрос:

Я пытаюсь открыть OutputStream ресурс в попытке с помощью блока ресурсов:

 try (OutputStream output = connection.getOutputStream()) {
    output.write(query.getBytes(charset));
}
  

Однако я получил ошибку компиляции:

Спецификация ресурсов не разрешена здесь для исходного уровня ниже 1.7

Есть ли эквивалент для 1.6 или мне нужно преобразовать мой проект в 1.7?

Комментарии:

1. Почему вопрос связан с gwt?

2. В какой строке вы получаете это сообщение?

3. Лучше использовать java7, потому что java6 устарел

4. java7 также устарел.

Ответ №1:

попробуйте этот код

 try {
    OutputStream output = connection.getOutputStream();
    output.write(query.getBytes(charset));
}catch (Exception e) {
    e.printStackTrace();
}
  

Комментарии:

1. Вам нужно / нужно закрыть поток в блоке finally и убедиться, что вы не затеняете какое-либо предыдущее исключение. Эквивалентный код Java 6 приведен в JLS IIRC.