SBT documentationによれば、 "プロジェクトは遅延型のプロジェクトタイプを宣言することによって定義されます。"SBTプロジェクトがなぜレイジー・ヴァルとして宣言されていますか?
これは確かに標準であり、私たちがやっていることですが、怠け者でなければならない理由があればどうしたらいいでしょうか。
lazy val
の代わりに通常のval
を使用すると、と思われます。もちろん、厳密なvalを使用すると、プロジェクト定義が順番に初期化されます。つまり、前方参照は機能しません。つまり、プロジェクトを依存関係の順序で定義する必要があります。
比較的大きなビルドでは、相互依存関係のある53のプロジェクトがあり、順序が強制されるのは実際にはGood Thing™なので、レイジーヴァールを使用する実際の理由があるかどうかは疑問でした。