maven對項目進行打包之后,可以將打包好的jar和某些資源文件復制到指定位置,例如你的項目結構是services父項目下有個子項目,service-1,它在打包之后,希望把jar和templates文件夾復制到父項目services的target目錄,這就可以使用maven的兩個插件來完成。
maven-dependency-plugin
編譯之后,將當前項目的jar復制到某個目錄下
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
</artifactItem>
</artifactItems>
<outputDirectory>../target</outputDirectory>
<stripClassifier>true</stripClassifier>
<stripVersion>true</stripVersion>
</configuration>
</execution>
</executions>
</plugin>
maven-resources-plugin
將資源目錄resources下的某些文件,復制到上一級目錄的templates下
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>../target/templates</outputDirectory>
<resources>
<resource>
<directory>${basedir}/templates</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
這兩個插件在多級項目中,使用的很多,比如,你的多層項目都是一個SPI,這些SPI放在一起打一下鏡像,對外提供服務,你就可以使用這兩個插件來將它們的jar輸出到父目錄下。