Das Hinzufügen von Abhängigkeiten von Drittanbietern ohne POM-Dateien kann in Maven schwierig sein 2. Beliebte Lösungen wie die Installation im lokalen Repository oder die Verwendung des „System“-Bereichs Nachteile.
Fehler bei „In lokalem Repo installieren“
Installierte Abhängigkeiten bleiben auf dem lokalen Computer, wodurch das Verteilungsartefakt von einem bestimmten Repository abhängig wird. Dies stellt andere Maschinen vor Herausforderungen, die versuchen, die Abhängigkeit aufzulösen.
Bedenken hinsichtlich des „Systembereichs“
Jars, die über den „System“-Bereich hinzugefügt wurden, werden nicht installiert oder darin enthalten Zielpaket. Dem Distributionspaket fehlen die notwendigen Abhängigkeiten, was bei der Verteilung zu Auflösungsproblemen führt.
Durch das Hinzufügen eines statischen Repositorys zu Ihrem POM sucht Maven innerhalb eines vordefinierten Bereichs nach Artefakten Ordnerstruktur in Ihrem Projektverzeichnis.
<repository> <id>repo</id> <releases> <enabled>true</enabled> <checksumPolicy>ignore</checksumPolicy> </releases> </repository>
Es wird nach Artefakten gesucht in:
repo/ | - x/ | | - y/ | | | - z/ | | | | - ${artifactId}/ | | | | | - ${version}/ | | | | | | - ${artifactId}-${version}.jar
Verwenden Sie ein Maven-Plugin, um Ihre Jars automatisch als Artefakte zu installieren:
mvn install:install-file -DlocalRepositoryPath=repo -DcreateChecksum=true -Dpackaging=jar -Dfile=[your-jar] -DgroupId=[...] -DartifactId=[...] -Dversion=[...]
Um die Bibliotheksinstallation zu vereinfachen, steht ein Hilfsskript zur Verfügung, um JAR-Dateien automatisch aus einem „lib“-Ordner zu installieren, Metadaten aufzulösen und zu generieren POM-Abhängigkeiten.
Um Ihr Zielartefakt unabhängig von nicht veröffentlichten Abhängigkeiten zu machen, sollten Sie erwägen, diese mithilfe des Assembly- oder OneJar-Plugins in Ihr Zielpaket aufzunehmen.
Das obige ist der detaillierte Inhalt vonWie kann ich JARs zu meinem Maven Build-Klassenpfad hinzufügen, ohne sie zu installieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!