Vejo três opções:
- Coloque as dependências em um repositório (pode ser um repositório de arquivos conforme descrito em esta resposta
) e declará-los com um escopo
provided
. - Use o
system
sujo truque de escopo (ou seja, declare as dependências com um escopo de sistema e defina o caminho para os jars em seu sistema de arquivos. - Pequena variação do #2:crie um jar com um MANIFEST.MF referenciando todos os jars (usando um caminho relativo) e declare uma dependência desse jar quase vazio com um
system
escopo.
A maneira limpa é a opção nº 1, mas outras também funcionariam no seu caso. A opção nº 3 parece ser a mais próxima do que você está procurando.
Atualização: Para esclarecer a opção nº 3
Digamos que você tenha um diretório com
a.jar
e b.jar
. Crie um c.jar
com um Class-Path
entrada em seu META-INF/MANIFEST.MF
listando outros jars, algo assim:Class-Path: ./a.jar ./b.jar
Em seguida, declare uma dependência em seu POM em
c
(e somente em c
) com um system
escopo, outros jars se tornarão "visíveis" sem ter que listá-los explicitamente em seu POM (claro, você precisa declará-los no manifesto, mas isso pode ser facilmente roteirizado).