私はソフトウェア コンサルタントの小さな会社で働いています。この会社は主に (現在は専ら) Eclipse を選択した IDE として使用する JVM の開発を行っています。
これまで、プロジェクト管理/ビルド ツールを使用していませんでした。プロジェクトのバージョン管理には、会社の SVN リポジトリを使用し、バイナリの依存関係 (JAR の依存関係も含む) を使用しました。これは少し面倒で、プロジェクト全体の lib フォルダーに余分な *.jar ファイルがたくさんあります。
最近、選択した PL として Scala に移行したため、ビルド ツールとして SBT を使用することも検討しました。Sonatype Nexus リポジトリをセットアップし、プロジェクトの SBT ファイルの宣言を開始しました。
問題は、顧客向けの多くのプロジェクトで使用される一連のユーティリティ プロジェクトがあることです。これまでは、顧客プロジェクトごとに Eclipse ワークスペースを用意することで、プロジェクト間の依存関係を管理してきました。これらの各プロジェクトには、依存関係のあるユーティリティ プロジェクトのローカル バージョンがあります。したがって、ローカル バージョンを最新に保つことは、SVN のコミットと更新によってのみ処理されてきました。
プロジェクトとワークスペースを構築するには、いくつかの方法があると思います。SBT を使用してプロジェクト間の依存関係を定義する場合、ユーティリティ プロジェクト専用のワークスペースを用意し、スナップショット/リリースを顧客プロジェクトの管理された依存関係としてインポートすることは理にかなっています。ただし、お客様のプロジェクトの開発中にユーティリティ プロジェクトを強化することがよくあるため、これを同じワークスペースで可能な限りオンザフライで実行できると便利です。
From: http://www.devdaily.com/scala/using-github-projects-scala-library-dependencies-sbt-sbteclipse Git リポジトリから現在のバージョンを取得し、ソースをビルドし、それらを Eclipse クラスパスに含めます。この種のセットアップにより、プロジェクトの更新を配布する主な手段としてリビジョン管理システムを引き続き使用できますが、SVN に似たものを見つけることはできませんでした...
SVN と eclipse で SBT を使用している、または SVN コマンドと一緒に多くのパブリッシュ/パブリッシュ ローカルを起動せずにプロジェクト間の依存関係をセットアップするスマートな方法を知っている人はいますか?
SBT を使用してプロジェクト間の依存関係を何らかの方法で宣言するとよいでしょう。これにより、SBT で一時的に管理される依存関係の責任をダンプできるようになるからです...