Non è possibile utilizzare systemPath, a meno che il proprio server/contenitore Java EE non abbia configurato il jar.
Ricorda che il maven è solo lo sviluppo e il tempo di compilazione. Una volta creato il file war, Maven non ha alcun effetto se non per aver inserito tutti i jar desiderati nella cartella WEB-INF/lib.
Quando si specifica l'ambito del sistema, significa che è responsabilità dell'utente assicurarsi che il barattolo sia presente quando viene dispiegata la guerra. Hai già un framework per farlo e non vuoi ingombrare la tua dipendenza da build con quel jar, ma devi renderlo disponibile tramite Maven solo durante lo sviluppo.
L'altro ambito simile è "fornito". ad es., JBoss o la tua implementazione comune La struttura di Tomcat fornisce già molti jar come Spring e Hibernate caricati dall'avvio del server e comuni a tutte le app nel server. Pertanto, non vorresti che maven build includesse quelli nel file war.
Nel modo giusto, i guru di Maven ti direbbero. è quello di avere il proprio server Maven e costruire qualsiasi artefatto necessario in quel server. Tuttavia, occasionalmente ciò non è possibile.
Pertanto, in tali occasioni, creo un repository a livello di progetto che viene distribuito con il progetto e controllato nel controllo di versione. Eseguo il comando mvn install
per creare una directory a livello di progetto chiamata, ad esempio, "project-repo".
http://maven.apache.org/plugins/maven-install-plugin/examples/specific-local-repo.html (A causa della familiarità, la maggior parte delle volte, costruisco il repository manualmente anziché eseguire mvn install).
Quindi in POM, ho specificato il file: // $ {project.basedir}/project-repo come uno dei repository. L'avvertenza con questo è che in Windows, le barre diverse dalla coppia dopo "file: //" devono essere back-slash quando si fa riferimento ai percorsi del file system di Windows.
<repositories>
<repository>
<id>my-repo1</id>
<name>my custom repo</name>
<url>http://ho.ho.ho</url>
</repository>
<repository>
<id>project-repo</id>
<name>my project repo</name>
<url>file://${project.basedir}\project-repo</url>
</repository>
</repositories>
prega di elaborare –
Guardate la risposta da @BlessedGeek e anche su questo rilevante SO domanda: http://stackoverflow.com/questions/2229757/maven-add-a-a-a-jar-per-percorso relativo/2230464 # 2230464 – maba
Fare riferimento a questo https://stackoverflow.com/a/45120371/1709793 – craftsmannadeem