在部署Scala应用程序时,我们在Jenkins上使用SBT。目前,我们的构建操作被指定为clean assembly
(使用Assembly plugin来生成胖JAR)。我们的构建目前需要2-3分钟,这是明智的,但随着项目变得越来越大并且频繁部署,它可能会成为瓶颈。
我记得在使用Visual Studio进行C ++部署时,必须使用clean(Rebuild All),否则有时(例如0.1%)的构建会被破坏(很可能是因为构建错过了标题中某些更改的依赖项)。
这是SBT的问题吗? clean
被认为是获得可靠构建的必要实践吗?
答案 0 :(得分:3)
我的经验是,有时候SBT会变得混乱,我见过的最常见的事情是它找不到属于项目一部分的类(这次没有编译)。我没有真正调试它的倾向,因为每次执行clean
修复它,但对于CI服务器,我每次都会去clean
。