Я сделал изменение кода в классе Scala, который работал нормально. При попытке компиляции модификации, компилятор выплюнуть сообщение об ошибке, «значение не является членом Int» в связи с этим (уже существующие) строки кода:Диагностика ошибки компиляции Scala «значение не является членом Int»
for (i <- 0 to cColumn -1) { ... }
Выполнение некоторых исследований, я пришел через некоторые сообщения об ошибках по методу «to», а также что «to» по-видимому является методом, предоставляемым внутри класса intWrapper (?).
Итак, основываясь на этой информации, я начал рассматривать операторы импорта своего класса ... нет такого импорта для intWrapper. (Q: В этом случае, как это вообще было скомпилировано/выполнялось в первую очередь?) Что делает это еще более интересным (для меня), так это то, что когда я начал выполнять глобальный поиск в базе кода для этого импорта, я случайно закончил сеанс компилятора (sbt) ... но когда я перезапустил его, класс скомпилирован просто отлично. Никаких ошибок. (И никаких изменений кода с предыдущего сеанса)
У кого-нибудь есть идеи относительно того, что может вызвать это прерывистое поведение?
ПРИМЕЧАНИЕ:
1) с помощью Scala 2.10.2 с JAVAC 1.7.0_25
2) изменение кода к классу не имело ничего общего с функциональностью, например, а также не изменять какие-либо импорт класса
Update: Вот объявление переменное:
val meta = rs.getMetaData()
val cColumn = meta.getColumnCount()
EDIT: За предложение, вот тестовые линии (все из них скомпилироваться сейчас):
implicitly[scala.Int => scala.runtime.RichInt]
intWrapper(3) to 4
for (i <- 0 to 33 -1) { /* do something smart */ }
for (i <- 0 to cColumn -1) { ... }
EDIT 2 Вот полная ошибка компилятора:
[error] /path/to/src/file/DBO.scala:329: value to is not a member of Int
[error] for (i <- 0 to cColumn -1) {
[error]
Эта ошибка повторялась ~ 18 раз в классе. (Это уровень интерфейса DBO-DB); где DBO.scala - это файл, содержащий недавно измененный признак.
Что такое 'cColumn' – Jatin
Это Int. (Я обновил вопрос, чтобы показать объявления.) – mjk