Sto provando a creare un endpoint REST Dropwizard (Jersey) che comunica con HBase. Sebbene queste siano le mie uniche due dipendenze di primo livello, entrambe queste dipendenze vengono caricate con molte dipendenze transitive in conflitto. Un semplice esempio di tale conflitto è Guava di Google:Risoluzione dei conflitti di dipendenza transitiva in Java
- Il cliente HBase specifica versione 11
- Dropwizard specifica 18
Dropwizard non funziona con la versione 11 e HBase non funziona con la versione 18
Ho esaminato la documentazione del plugin schermo Maven, ma non sembra consentirvi di riposizionare le classi trovate nei barattoli delle dipendenze. Quindi non so come risolvere questo problema per separare questi due componenti in JVM separate.
Puoi fornire maggiori dettagli sul perché ognuno non può essere eseguito con una versione aggiornata/downgrade di guava? –
I conflitti erano molti, ma uno che mi ha ucciso era 'com.google.common.base.Stopwatch', dove tra le versioni 17 e 18 l'API è cambiata senza alcuna forma di deprecazione –
Nessuna possibilità di bifare HBase e l'aggiornamento della dipendenza ? –