Heim >Java >javaLernprogramm >Wie kann ich JARs zu meinem Maven 2 Build-Klassenpfad hinzufügen, ohne sie zu installieren?
Können Sie Jars zu Maven 2 Build Classpath hinzufügen, ohne sie zu installieren?
Die Integration externer Abhängigkeiten in Maven 2-Projekte kann während der Entwicklung mühsam sein . Um das manuelle Erstellen und Installieren von pom.xml-Dateien für Bibliotheken von Drittanbietern zu vermeiden, suchen wir nach einer Lösung, die es uns ermöglicht, Jars aus einem bestimmten Verzeichnis einzubinden.
Probleme mit vorhandenen Ansätzen
Zu den häufig empfohlenen Methoden zum Hinzufügen von Jars gehört die lokale Installation oder die Verwendung eines „System“-Bereichs. Diese Methoden haben jedoch Nachteile:
Statische projektinterne Repository-Lösung
Um diese Einschränkungen zu beheben, können wir mithilfe der folgenden pom.xml-Konfiguration ein statisches projektinternes Repository erstellen :
<repository> <id>repo</id> <releases> <enabled>true</enabled> <checksumPolicy>ignore</checksumPolicy> </releases> <snapshots> <enabled>false</enabled> </snapshots> <url>file://${project.basedir}/repo</url> </repository>
Verwenden von Maven zur Installation im Projekt Repo
Um die manuelle Erstellung der Repository-Struktur zu vermeiden, können wir ein Maven-Plugin verwenden, um Jars als Artefakte zu installieren:
mvn install:install-file -DlocalRepositoryPath=repo -DcreateChecksum=true -Dpackaging=jar -Dfile=[your-jar] -DgroupId=[...] -DartifactId=[...] -Dversion=[...]
Abhängigkeiten in Zielpaket einschließen
Während die Verwendung eines projektinternen Repositorys Verteilungsprobleme löst, hängen unsere Zielpakete weiterhin von nicht auflösbaren JAR-Dateien ab. Um dies zu beheben, können wir diese Abhängigkeiten entweder mit dem Assembly-Plugin oder dem OneJar-Plugin in das Zielpaket einbinden.
Das obige ist der detaillierte Inhalt vonWie kann ich JARs zu meinem Maven 2 Build-Klassenpfad hinzufügen, ohne sie zu installieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!