déballage de la dépendance et de remballer les classes à l'aide de maven?
Je suis en train de déballer un artefact maven Un et rangez-le dans un nouveau fichier jar dans le projet maven B.
Déballage des fichiers de classe à partir d'Un artefact dans:
<my.classes.folder>${project.build.directory}/staging</my.classes.folder>
fonctionne très bien en utilisant ceci:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack</id>
<phase>generate-resources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.test</groupId>
<artifactId>mvn-sample</artifactId>
<version>1.0.0-SNAPSHOT</version>
<type>jar</type>
<overWrite>true</overWrite>
<outputDirectory>${my.classes.folder}</outputDirectory>
<includes>**/*.class,**/*.xml</includes>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
Dans le même pom, je veux générer un supplément de jar contenant les classes juste déballé:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<classesdirectory>${my.classes.folder}</classesdirectory>
<classifier>sample</classifier>
</configuration>
</execution>
</executions>
</plugin>
Un nouveau pot est créé, mais il ne contient pas les classes à partir de l':
${my.classes.folder}
son simplement une copie de la valeur par défaut du projet bocal. Des idées?
J'ai essayé de suivre ce guide:
http://jkrishnaraotech.blogspot.dk/2011/06/unpack-remove-some-classes-and-repack.html
mais sa ne fonctionne pas.
Vous devez vous connecter pour publier un commentaire.
Dans l'exemple que vous avez
<classesdirectory>
, le docs ont l'élément<classesDirectory>
. Sensibilité à la casse de questions, je pense.Je vous suggère d'utiliser le
maven-ombre-plugin
à la place.Qui permettra de faire le déballez-repack dans la même invocation.
Vous pourriez faire quelque chose comme ceci par exemple: