SBT: Dependência de outro projeto do SBT sem publicação

Eu tenho um conjunto de componentes fracamente relacionados, onde alguns deles dependem de outros. Por concretude, vamos supor que temos componentes "comum", "a" e "b". "comum" não tem dependências, mas todos os outros projetos usam "comum". Além disso, "a" depende de "b". Todos os componentes são escritos em Scala e eu gostaria de usar sbt para construí-los.

As seguintes propriedades seria bom ter:

Várias pessoas trabalham nos diferentes projetos, e é por isso que não queremos ter um único repositório, mas sim um repositório por projeto.Construir um projeto deve ser fácil e todas as dependências devem ser construídas automaticamente (se necessário). Ou seja, se eu modificar "common" e, em seguida, compilar "b", isso deve primeiro criar "common" e, em seguida, ir para a construção de "b".Ser capaz de ter todos os projetos em um IDE, de modo que a refatoração e as tarefas IDE semelhantes funcionem corretamente e todos os projetos afetados sejam alterados corretamente.

Tanto quanto eu posso ver, existem duas possibilidades de ter dependências desse tipo em sbt; ou usamos subprojetos ou usamos uma dependência gerenciada (que é enviada para algum lugar, por exemplo, localmente). No entanto, parece que ambas as opções não fornecem (1) ou (2) acima. Em particular

O uso de subprojetos nos obriga a usar um único repositório, porque todo subprojeto deve estar em subdiretórios do projeto principal.Publicar os projetos localmente e usar dependências gerenciadas é complicado, já que a mudança "comum" e a criação do "b" apenas selecionam as alterações em "comum" se esse projeto foi criado e publicado primeiro. Posso ver que as dependências gerenciadas são úteis em muitos casos, mas, para nosso caso de uso específico, elas não parecem funcionar bem. Frequentemente trabalhamos em vários projetos e os alteramos ao mesmo tempo. Por este motivo, ter que publicar muitas vezes parece excessivamente complicado.

Não há realmente nenhuma maneira de dizer que um projeto sbt depende de outro projeto sbt em um determinado local (relativo), e tendo sbt descobrir quando construir a dependência?

questionAnswers(1)

yourAnswerToTheQuestion