Maven打包时,不包含jar包

在给Maven项目打war包时,如果不想把依赖中的jar包也包含进去,可以在plugins中加入

<span style="white-space:pre">			</span><plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-war-plugin</artifactId>
				<version>2.2</version>
				<configuration>
				<webappDirectory>WebContent</webappDirectory>
				<workDirectory>${project.build.directory}/work</workDirectory>
				<useCache>false</useCache>
				<packagingExcludes>WEB-INF/lib/*</packagingExcludes>
				<archive>
				<addMavenDescriptor>true</addMavenDescriptor>
				</archive>
				</configuration>
			</plugin>


这样,打成的war包中,就没有依赖中的jar包了,可以省去好长时间

其中${project.build.directory} 是maven内置变量,默认值是target,eclipse中提示是This expression evaluates to D:eclipseworkspace*** arget


Maven的一些内置变量说明:

  • ${basedir} 项目根目录
  • ${project.build.directory} 构建目录,缺省为target
  • ${project.build.outputDirectory} 构建过程输出目录,缺省为target/classes
  • ${project.build.finalName} 产出物名称,缺省为${project.artifactId}-${project.version}
  • ${project.packaging} 打包类型,缺省为jar
  • ${project.xxx} 当前pom文件的任意节点的内容



原文地址:https://www.cnblogs.com/Iqiaoxun/p/5350601.html