Ho 2 progetti usando Maven. Il primo è una libreria contenente classi e metodi di utilità. Il secondo progetto è un'applicazione reale che ha la libreria come dipendenza. La mia libreria utilizza internamente una libreria di terze parti.Limitare una dipendenza transitiva all'ambito runtime in Maven
Quindi queste sono le dipendenze:
- Biblioteca personale: dipende dalla libreria di terze parti
- La mia domanda: dipende dalla mia libreria
Comunque, io non voglio che il classi di libreria di terze parti disponibili al tempo di compilazione nella mia applicazione. Questo perché l'applicazione è supportata da un team di grandi dimensioni e voglio evitare che le persone utilizzino accidentalmente metodi della libreria di terze parti nell'applicazione, dato che alcuni nomi di classi e alcuni nomi di metodi sono simili tra i due. Naturalmente la libreria di terza parte dovrà essere disponibile nella mia domanda al runtime.
Se l'ambito per tutti i miei dipendenze era compilare, non sarebbe raggiungere il mio obiettivo. C'è un modo per ottenere questo in Maven 3?
Speravo ci fosse un modo per farlo . Grazie per la tua risposta, Michal. – Juanal
Questo è stato risposto anni fa. C'è un modo per farlo ora? Mi chiedo se potresti in qualche modo usare un ambito di importazione per hackerare una soluzione qui? –
Non penso che nulla sia cambiato qui. Come ho detto nel 2012, il design Maven è fondamentale. Credo che ora non ci sia modo di cambiare questo dato che è proprio come Maven fa le cose fin dall'inizio. –