桥山之巅,姬水之畔

Maven项目代码和jar包分开打包

2019.02.14

引言

代码包和依赖包分开打包这样的好处是:如果只修改了逻辑代码,没有修改依赖,就只需要更新代码包即可。
在pom.xml中中做如下修改:

步骤1

<project>节点中修改

<packaging>war</packaging>改成<packaging>jar</packaging>

步骤2

<build>下<plugins>节点中注释掉

<plugin>
   <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
</plugin>

步骤3

<build>下<plugins>节点中添加如下配置:

<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-dependency-plugin</artifactId>
	<executions>
	 <execution>
	     <id>copy-installed</id>
	     <phase>package</phase>
	     <goals>
	         <goal>copy</goal>
	     </goals>
	     <configuration>
	         <artifactItems>
	             <artifactItem>
	                 <groupId>${project.groupId}</groupId>
	                 <artifactId>${project.artifactId}</artifactId>
	                 <version>${project.version}</version>
	                 <type>${project.packaging}</type>
	             </artifactItem>
	         </artifactItems>
	         <outputDirectory>target/lib</outputDirectory>
	     </configuration>
	 </execution>
	 <execution>
	     <id>copy-lib</id>
	     <phase>prepare-package</phase>
	     <goals>
	         <goal>copy-dependencies</goal>
	     </goals>
	     <configuration>
	         <outputDirectory>${project.build.directory}/lib</outputDirectory>
	         <overWriteReleases>false</overWriteReleases>
	         <overWriteSnapshots>false</overWriteSnapshots>
	         <overWriteIfNewer>true</overWriteIfNewer>
	         <includeScope>compile</includeScope>
	     </configuration>
	 </execution>
	</executions>
</plugin>

效果图


参考: https://www.cnblogs.com/lishan1/p/10317488.html