scala では、より短い import を可能にするためにパッケージ ステートメントをスタックするのが一般的ですが、スタックされたパッケージを使用してファイルを scala ide にロードし、同じ編成で始まるインポートを使用しようとすると、次のように見えるものからコンパイラ エラーが発生します。プレゼンテーション コンパイラ。コードは、IDE の外部の sbt で正常にコンパイルされます。
コード スニペットの例は次のとおりです。
package com.coltfred
package util
package time
import com.github.nscala_time.time.Imports._
インポート時にエラーが発生しますobject github is not a member of package com.coltfred.util.com
。
インポートを 1 行に移動するとエラーは解消されますが、コード ベースでこの方法を頻繁に使用しているため、すべてを 1 行のパッケージ ステートメントに変更するのは面倒です。
なぜこれが起こっているのですか、それを修正するために私にできることはありますか?
編集:
eclipse-sbt プラグインを使用して、このための eclipse プロジェクト ファイルを生成しました。ディレクトリ構造は本来あるべきものであり、すべての依存関係はクラスパスにあります。
編集2:
util パッケージのテスト ツリー (同じパッケージにあるはず) にファイルがあったことがわかりましたが、上部に重複したパッケージ ステートメントがありました。メインツリーのコンパイルには影響しないはずなので、テストツリーをチェックしていませんでしたが、どうやら間違っていたようです。