質問

現在、SCALAで開発するためにFSCを使用したIdeaのビルドメカニズムを使用しています。まだ少し遅いので、コンピレーションサーバーを(再)開始することは痛みです。ここの多くの人々は、SBTをアイデアとともにビルドツールとして提案しています。

各アプローチの長所と短所は何だと思いますか?

役に立ちましたか?

解決

私は両方を試してみましたが、最後にコンパイルするためにストレートSBTを好みます。

短所?エラーのコンパイルをクリックしてコードを直接修正できることを本当に逃していますが、... SBTでのコンパイルははるかに高速です。

Idea Scalaプラグインの毎晩のビルドは、品質/パフォーマンスが異なる場合がありますが、最近はどんどん良くなっています。 Scalaプラグインは、キャッチするためにコンパイルを実行する前に使用する前に多くのエラーにフラグを立てることができます。 (たとえば、私は毎晩0.4.693を実行していますが、新しい方法検査はすでに死んでいます。)

コマンドラインでのSBTでの生活に関する私のアドバイス:SBTを起動して、ロードされているすべてのものを利用するために、できるだけ長くインタラクティブに実行したままにしておきます。

SBTは最終的に去りますが、SBTラッパーにより多くのメモリを与えることで、それを実現することはめったにありません。

これが私に合ったSBT発売ラッパーです。

java -Xms512M -Xmx1500M -XX:MaxPermSize=512m -jar `dirname $0`/sbt-launch.jar "$@"

SBT 0.7の私の最大の問題は、頻繁に戻って、私が実際に変更していたコードにしか接線であると思われるファイルの大きなスワスを再コンパイルすることです。 (それでも、IdeaやFSCよりも速いです!)

良いニュース:SBT 0.9には、いくつかの素晴らしい増分コンパイルの改善があります。残念ながら、0.7から0.9への移行経路はまだ初期の頃です。ネスカラでのマーク・ハラのプレゼンテーションはオンラインです http://www.nescala.org/2011/ 興味があるなら。

便利なプラグイン

  • http://github.com/mpeltonen/sbt-idea -SBTプロジェクトと簡単にアイデアプロジェクトを同期して作成して維持します
  • http://github.com/orfjackal/idea-sbt-plugin - InsionからSBTの実行プロファイルを作成してください(昨年10月にコマンドラインでSBTを実行するよりも遅いことがわかりましたが、Orfjackalはまだ発展しているので、別のショットを与える必要があります)
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top