我在一家小型软件顾问公司工作,主要(目前仅用于)使用Eclipse作为我们选择的IDE进行JVM开发。
到目前为止,我们还没有使用任何项目管理/构建工具。我们使用公司SVN存储库来对我们的项目进行版本控制以及相同的任何二进制依赖项(井JAR依赖项)。这有点乱,我们的项目中的lib文件夹中有很多无关的* .jar文件。
随着我们最近转向Scala作为我们选择的PL,我们也考虑使用SBT作为构建工具。我们已经建立了Sonatype Nexus存储库,并已开始为我们的项目声明SBT文件
问题是,我们有一组实用项目,可以为我们的客户在很多项目中使用。到目前为止,我们通过为每个客户项目创建一个Eclipse工作区来管理项目间的依赖关系,每个客户项目都有一个本地版本的实用程序项目,它具有依赖关系。因此,保持本地版本的最新版本仅通过SVN提交和更新来处理。
我想我们可以通过几种不同的方式来构建我们的项目和工作空间。使用SBT定义项目间依赖关系,单独为实用程序项目创建工作区,然后在客户项目中将快照/版本作为托管依赖项导入是有意义的。但是,由于我们经常在开发客户项目期间对公用事业项目进行增强,所以仍然可以在同一个工作区中尽可能多地实现这一功能。
来自:http://www.devdaily.com/scala/using-github-projects-scala-library-dependencies-sbt-sbteclipse似乎Git存在一个插件,它从Git存储库中获取当前版本,构建源并将它们包含在Eclipse类路径中。这种设置将允许我们继续使用修订控制系统作为分发项目更新的主要手段,虽然我无法找到类似的SVN ...
是否有人使用SBT与SVN和eclipse,和/或知道一种智能方法来设置项目间依赖关系,而不会在SVN命令旁边发布大量发布/发布本地?
以某种方式使用SBT声明项目间依赖项会很好,因为这样我们就可以在SBT上转储对瞬态管理依赖项的责任...