Ho un caso in cui voglio una dipendenza dal percorso di classe di runtime ma non il classpath di prova. La dipendenza in questione è Logback, un'implementazione SLF4J. In runtime, desidero che il mio codice (facoltativamente) dipenda dal logback in modo che disponga di un'infrastruttura di logging disponibile. Al momento del test, tuttavia, desidero utilizzare l'implementazione slf4j-nop
per nascondere l'output del registro. Con logback
come dipendenza di runtime e slf4j-nop
come dipendenza di test, durante l'esecuzione dei test viene visualizzato un avviso di implementazione multiplo da SLF4J. Non vedo un modo per escludere logback
dal classpath di prova.Come posso avere una dipendenza Maven dal percorso di classe di runtime ma non dal percorso di classe di test?
Non voglio dividere i miei test in un pacchetto separato se può essere evitato.
Idee?
Grazie! Mi hai risparmiato un sacco di tempo nella ricerca con questa risposta. –
Grazie mille. Triste sembra un hack ... Vorrei poter ottenere un "!" operatore nel campo di applicazione. –