2015-01-14 3 views
0

получаю ошибку в этой строкеJava ошибка попробуйте ресурс не относится к типу переменной

try (FileInputStream fis = new FileInputStream("E:/encryptedfile.des")) 

ошибка: попробуйте ресурс не относится к типу переменной требуется: java.lang.Autocloseable, найдено: java.io. file.inputstream.can любой скажет мне лучшее решение для этой ошибки

+4

Скопируйте и вставьте * точное сообщение об ошибке. Я сомневаюсь, что он включает в себя: 'found: java.io.file.inputstream'. Также, пожалуйста, сообщите нам, какую версию Java вы строите против. –

+1

Кажется, что-то не так с вашей средой. Есть ли вероятность, что вы каким-то образом используете синтаксис java 7 со старым JDK? – AlexR

+0

Согласен с Джоном Скитом. Кроме того, можете ли вы отправить более крупный фрагмент кода? 'try (...)', вероятно, недостаточно. Отправить тело try: 'try (...) {...}' – AlexR

ответ

2

Возможно, вы забыли обновить ссылки на классы JRE на пути сборки. Моя ставка заключается в том, что, поскольку вы не используете библиотеки JDK 7, но по-прежнему ссылаетесь на старые библиотеки. В java 7 вы ДОЛЖНЫ использовать Autocloseable для всех потоков ввода/вывода. Попытайтесь изменить свои ссылочные классы на самые обновленные классы, если вы собираетесь строить против JDK .7.

Edit: Если вы используете Eclipse, ...

Чтобы изменить это: Перейти к Window-> Настройки-> Java-> Installed JRE и быть уверены, что вы направляете на соответствующую JDK.

+0

Это может быть очень хорошо связано с чем-то другим, однако это было исправление, которое я имел, когда переключился с Java 6 на Java 7. – Adam

+0

Последний Предполагает, что OP использует Eclipse. Даже если это так, вы должны указать на JDK, а не на JRE. –

+0

Спасибо, отредактирован. – Adam

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