Tengo un proyecto multiproyecto SBT, que se parece al ejemplo de SBT doc:¿Cómo deshabilitar las tareas de paquete y publicación para el módulo agregado de raíz en compilación de varios módulos?
import sbt._
import Keys._
object HelloBuild extends Build {
lazy val root = Project(id = "hello",
base = file(".")) aggregate(foo, bar)
lazy val foo = Project(id = "hello-foo",
base = file("foo"))
lazy val bar = Project(id = "hello-bar",
base = file("bar"))
}
Debido root
es sólo un proyecto virtual de agregar dos subproyectos, me gustaría evitar la generación de paquetes (y publicación artefacto), pero aún generar paquete (y publicar) para ambos subproyectos.
¿Hay alguna manera fácil de conseguirlo?
No funciona. Al menos cuando intento 'publish-local', el stills construye/publica un jar vacío para el proyecto raíz. (Yo uso sbt 0.11.2) – paradigmatic
@paradigmatic ¿Suprimiste publicar localmente? Debe anular cualquier paso que no desee que se realice en la raíz. Lo probé con un proyecto vacío que contenía dos subproyectos, como en su ejemplo, y esto dejó de publicar nada en la raíz. –
También probé este mismo ejemplo sin anulación y todavía publica artefactos para los 3 subproyectos. Eso es realmente extraño. – paradigmatic