Li e reli, e não consegui achar uma solução.
Então em vez de separar o projeto em varios projetos, existe uma maneira de gerar JAR por pacote?
kicolobo
Oi vtr002,
neste processo de modularização, uma boa alternativa é você tentar desenhar um grafo de dependências entre os seus módulos.
Explicando melhor: vamos imaginar que você tenha os módulos A, B, C, D e E no seu projeto.
Suponha que A dependa de B e C
A -> B
A -> C
Agora, suponha que C dependa de D e E
C -> D
C -> E
Desenhe isto no papel (aqui pelo fórum tá foda). Aí você consegue justamente evitar estes problemas de circularidade. Por que imagine o compilador na seguinte situação: A depende de B, e B depende de A.
Se eu vou compilar A, e B não está compilado, quando for tentar compilar B, caio num loop.
O ideal é que as dependências sempre tenham a forma de uma árvore, sem que haja retornos nas dependências.
vtr002
Então, pensei e desenhei e não encontrei forma de não ter referencia. Inclusive modulos podem referenciar outros modulos.
A solução que eu queria mesmo era só separar um determinado pacote num jar diferente quando gerasse o jar da aplicação.
kicolobo
Opa,
se não tem modo de não ter circularidade, já pensou que talvez estes dois módulos deveriam ser um só?
vtr002
Estão, os módulos são apenas separações departamentais.
Queria dividir para facilitar a manutenção.
Por exemplo fiz alteração num modulo de compras do projeto quero só atualizar esse modulo no cliente. que muitas vezes utilizasse da internet para atualizar e enviar o jar todo é um grande custo.