Frage ..
Ich mag würde eine Abhängigkeit von einem Maven jar damit verpackt hinzuzufügen sind Abhängigkeiten.Maven - In jar-with-Abhängigkeiten als dependecy
Einzelheiten ..
Ich habe ein Multi-Modul Maven Projekt, in dem eine der Modul auf nativen Bibliotheken und dergleichen abhängt. Als Teil von ihm ist zu bauen, verpackt sie es die Abhängigkeiten in ein jar-with-dependencies
oben wie hier gezeigt:
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.4</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>${mainClass}</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
Alles gut, ich zwei Gläser, wenn ich bauen:
seaniscool-0.0.1-SNAPSHOT.jar
seaniscool-0.0.1-SNAPSHOT-jar-with-dependencies.jar
aber ich möchte Verwenden Sie dieses Artefakt in einem anderen Modul desselben Projekts. Wenn ich das Modul einfach als Abhängigkeit hinzufüge, erhalte ich das Jar ohne die nativen Bibliotheken.
Ich könnte die Build-Konfiguration duplizieren, um die nativen Bibliotheken in das zweite Modul auch aufzunehmen, es ist nicht sehr umfangreich, würde es aber nicht bevorzugen.
Irgendwelche Ideen, wie ich die jar-with-dependencies
als Abhängigkeit hinzufügen kann und damit von den Bibliotheken abhängen?
Einige Gedanken ..
Ich weiß, ich kann einen separaten Gefäß mit Testklassen erstellen, die Maven verweisen können:
Im 1. Modul:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
Im 2. Modul:
<dependency>
<groupId>my.group.id</groupId>
<artifactId>my.artifact.id</artifactId>
<version>my.version</version>
<type>test-jar</type>
<scope>test</scope>
</dependency>
Ist dieses Konzept hier vielleicht übertragbar?
Warum wollen Sie speziell das Glas mit Abhängigkeiten und nicht nur die Abhängigkeiten, das ist, was Maven tut für transitive Abhängigkeiten Sie Griffe? –
Es sind nicht die Java-Abhängigkeiten des JAR, nach denen ich suche, es sind die DLL-Dateien und was Sie haben, die damit verbunden sind. –