Я имею дело с тем, что сейчас кажется повторяющейся проблемой.В моей среде Netbeans есть проблема с определенными платформами Java (для ясности, у меня есть только одна определенная, которая, конечно, по умолчанию) и включенными в них библиотеками для стандартных библиотек Java.
Первоначально, на платформе Java 1.8использовал C:/Program Files/Java/jdk1.8.0_162
, и был в течение нескольких месяцев.На этой неделе я начал видеть странное поведение в моих проектах, где класс java.sql.PrepareStatement
выдавал ошибку cannot find symbol
.Я все еще вижу файл .class
в библиотеках проектов, когда развертываю Java 1.8 (Default) > rt.jar > java.sql
в дереве библиотеки.Однако любой импорт или использование класса java.sql.PreparedStatement
приводит к ошибкам и не позволяет скомпилировать код.
В качестве быстрого исправления я установил jdk1.8.0_181 и установил его в качестве нового Java по умолчаниюПлатформа путем изменения значения переменной netbeans _jdkhome
в C:\Program Files\Netbeans 8.0\etc\netbeans.conf
.Это вернуло меня к работе и позволило снова использовать PreparedStatement
объекты в моих проектах как вчера, так и сегодня утром.Однако теперь у меня такое же поведение cannot find symbol
, и класс java.sql.PreparedStatement
снова перестает корректно работать, и поэтому мои проекты не позволяют мне компилировать или запускать мой код.
РЕДАКТИРОВАТЬ: Просточтобы быть понятным, это влияет только на один класс.Я могу успешно импортировать другие классы java. * И java.sql. *, Как показано на снимке экрана ниже:
РЕДАКТИРОВАТЬ 2: Я установил Netbeans 8.2 и определилjdk1.8.0_181 в качестве единственной платформы Java по умолчанию.Новая версия IDE позволяет импортировать / использовать класс java.sql.PreparedStatement, в то время как Netbeans 8.0.2 по-прежнему выдает ошибку «не удается найти символ».Итак, я полагаю, на данный момент, я могу предположить, что что-то повреждено / прослушивается в моей установке 8.0.2.Возможно, я попытаюсь переустановить эту версию IDE, поскольку в новой IDE возникают проблемы с поддержкой старых приложений (для которых требуется исходный / двоичный формат ниже JDK 6).