在給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:\eclipse\workspace\***\target
Maven的一些內置變量說明:
- ${basedir} 項目根目錄
- ${project.build.directory} 構建目錄,缺省為target
- ${project.build.outputDirectory} 構建過程輸出目錄,缺省為target/classes
- ${project.build.finalName} 產出物名稱,缺省為${project.artifactId}-${project.version}
- ${project.packaging} 打包類型,缺省為jar
- ${project.xxx} 當前pom文件的任意節點的內容