正常に動作していた Scala クラス内でコードを変更しました。変更をコンパイルしようとすると、コンパイラは次の (既存の) コード行に関連するエラー メッセージ「値 to は Int のメンバーではありません」を吐き出します。
for (i <- 0 to cColumn -1) { ... }
いくつかの調査を行うと、「to」メソッドに関するいくつかのバグレポートに出くわしました-また、「to」は明らかにintWrapperクラス内で提供されるメソッドです(?)。
したがって、その情報に基づいて、クラスのインポートステートメントを調べ始めました... intWrapper にはそのようなインポートはありません。(Q: では、そもそもこれはどのようにコンパイル/実行されたのでしょうか?) (私にとって) さらに興味深いのは、そのインポートのコードベースでグローバル検索を開始したときに、誤って終了してしまったことです。コンパイラ(sbt)セッション...しかし、再起動すると、クラスは正常にコンパイルされました。エラーはまったくありません。(そして、前のセッションからのコードの変更はありません)
この断続的な動作の原因について何か考えがある人はいますか?
注:
1) javac 1.7.0_25 で Scala 2.10.2 を使用する
2) クラスへのコード変更は、サンプル機能とは何の関係もなく、クラスのインポートも変更しませんでした
更新:変数宣言は次のとおりです。
val meta = rs.getMetaData()
val cColumn = meta.getColumnCount()
編集:提案ごとに、ここにテスト行があります (現在はすべて正常にコンパイルされます):
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 は、新しく変更された特性を含むファイルです。