У меня есть проект Maven, и мы хотим создать два отдельных jar-файла, один из которых содержит 32-битные библиотеки, а другой - 64-битные библиотеки.
Наша текущая сборка будет производить 32- или 64-битные артефакты в зависимости от операционной системы, в которой выполняется сборка.
Обзор того, как мы в настоящее время настроены:
<properties>
<env.arch>${sun.arch.data.model}</env.arch>
</properties>
<build>
<pluginManagement>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-native</id>
<phase>process-resources</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>artifact-for-${env.arch}</groupId>
<artifactId>artifact.name</artifactId>
</artifactItem>
...
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
</execution>
</executions>
Итак, он копирует зависимости, которые соответствуют значению нашего свойства для ${env.arch}
, а затем создает jar с помощью maven-jar-plugin
.
Что нам нужно сделать, так это создать 2 баночки из одной сборки ... один, содержащий 32-битные зависимости, и другой, содержащий 64-битные зависимости.
Может кто-нибудь предложить какое-нибудь руководство, как мы можем это сделать?
Спасибо