在给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文件的任意节点的内容