为了满足提供的要求,需要两个配置步骤:
以下配置将提供它:
<properties>
<library.repository.folder>../libs</library.repository.folder>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
<configuration>
<skip>true</skip>
</configuration>
<executions>
<execution>
<id>install-artifact</id>
<phase>install</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
<packaging>${project.packaging}</packaging>
<file>${project.build.directory}/${project.build.finalName}.${project.packaging}</file>
<localRepositoryPath>${library.repository.folder}</localRepositoryPath>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
请注意library.repository.folder
用于指向所需目标lib
文件夹的属性(在不同路径的情况下更改)。上面提供的配置使用标准 maven 属性(用于项目坐标和打包),但您可以根据需要更改它们(或硬编码实际值)。
另请注意,install-file
目标将在lib
文件夹下重新创建与本地存储库中相同的文件夹结构 (lib\groupId\artifactId\version\file.jar)。如果您希望将文件直接放在 lib 文件夹 (lib\file.jar) 下,则可以移至以下配置:
<properties>
<library.repository.folder>../libs</library.repository.folder>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.6</version>
<configuration>
<outputDirectory>${library.repository.folder}</outputDirectory>
</configuration>
</plugin>
</plugins>
</build>
这次我们不是使用install-file
目标,而是使用Maven Jar 插件jar
的目标,将打包的工件直接放置到文件夹(而不是标准文件夹)和打包期间(不是)。lib
target
phase
install
如果出于任何原因您希望将最终工件保留在目标文件夹中并将其直接复制到 lib 文件夹(没有 maven 文件夹层次结构)并且在安装阶段,那么您可以移至以下配置:
<properties>
<library.repository.folder>../libs</library.repository.folder>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<id>re-package-into-lib</id>
<phase>install</phase>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<outputDirectory>${library.repository.folder}</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>