Ich bin neu zu Maven. (Ich habe stundenlang nach der Antwort gesucht, aber ohne Glück. mvn Abhängigkeit: Kopie-Abhängigkeiten lösen mein Problem nicht) Ich muss alle Abhängigkeiten eines Projekts (in Form von Gläsern) kopieren und wenn einer von meine Gläser hängen von einem anderen Artefakt als auchmaven - Kopieren Sie alle Abhängigkeiten eines Projekts und transitive Abhängigkeiten
Beispiel project1 pom.xml, dass Artefakt kopieren:
<?xml version="1.0"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>project1</groupId>
<artifactId> project1.utils</artifactId>
<version>1.0</version>
<name> project1. utils </name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>project2</groupId>
<artifactId>project2.artifact</artifactId>
<version>2.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<index>true</index>
<manifestEntries>
<Build-Number>${buildNumber}</Build-Number>
<Revision>${Revision}</Revision>
</manifestEntries>
</archive>
</configuration>
</plugin>
</plugins>
</build>
</project>
„project1“ hat eine Abhängigkeit von project2.artifact.jar Wenn ich „mvn Abhängigkeit verwenden: Kopier- Abhängigkeiten "Ich bekomme project2.artifact.jar , aber ich bekomme nicht project3.artifact.jar, dass ich s eine Abhängigkeit von "project2".
Ich habe nicht die Pom von Projekt2, aber es ist in meinem lokalen Repository installiert.
Wie bekomme ich alle Abhängigkeiten von Projekt 1 einschließlich der zweiten Jar ("project3.artifact.jar")?
pom von project2 etwas würde wie folgt aussehen: aber ich es nicht haben, wenn ich an einen Kunden gehen, so dass ich project2.artifact.jar installieren, project3.artifact.jar manuell mit „mvn install“
Projekt2 pom.xml:
<?xml version="1.0"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>project2</groupId>
<artifactId>project2.artifact</artifactId>
<version>2.0</version>
<name>project2.artifact</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>project3</groupId>
<artifactId>project3.artifact</artifactId>
<version>3.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<index>true</index>
<manifestEntries>
<Build-Number>${buildNumber}</Build-Number>
<Revision>${Revision}</Revision>
</manifestEntries>
</archive>
</configuration>
</plugin>
</plugins>
</build>
</project>
Vielen dank in
erweiterte
Können Sie Projekt2 POM posten? – Tunaki
Zu welchem Zweck müssen Sie die JAR-Dateien kopieren? Möchten Sie die App ausführen? – khmarbaise
Tunaki - ich habe die Frage bearbeitet und die Pom von Project2 hinzugefügt, obwohl ich sie nicht habe, wenn ich bei einem Kunden bin. khmarbaise - Ich brauche die Kopie, damit ein Client den Code von Projekt1 kompiliert und project1.utils.jar ausführt (ich installiere auf seinem Computer project1.artifact.jar, project2.artifact.jar mit mvn install vor). – Mishta