maven常用插件总结

来源:互联网 发布:数据透视表 编辑:程序博客网 时间:2024/05/19 06:47

Maven常用插件总结

基于Maven管理的项目,很多任务都是依赖插件来完成的,比如编译,打包,发布等,其中有些是Maven内置的插件,也有一些是第三方插件可以帮我们完成某些特定的需求,本文主要是对自己常用的一些Maven插件进行总结、备忘,便于以后查阅之用。

1 maven-compiler-plugin 编译插件,可以指定JDK版本、编码等

 <plugin>    <groupId>org.apache.maven.plugins</groupId>    <artifactId>maven-compiler-plugin</artifactId>    <version>3.3</version>    <configuration>        <source>1.8</source>        <target>1.8</target>        <encoding>UTF-8</encoding>        <showWarnings>true</showWarnings>    </configuration> </plugin>

2 maven-jar-plugin 打jar包

    <plugin>    <groupId>org.apache.maven.plugins</groupId>    <artifactId>maven-jar-plugin</artifactId>    <version>2.6</version>    <configuration>        <archive>            <manifest>                <addClasspath>true</addClasspath>            </manifest>        </archive>    </configuration></plugin>

3 maven-source-plugin 打源码包

<plugin>    <groupId>org.apache.maven.plugins</groupId>    <artifactId>maven-source-plugin</artifactId>    <version>2.4</version>    <executions>        <execution>            <id>attach-sources</id>            <goals>                <goal>jar-no-fork</goal>            </goals>        </execution>    </executions></plugin>

4 maven-assembly-plugin 强大的归档利器,自定义打包

<!--pom.xml中添加插件-->    <plugin>    <groupId>org.apache.maven.plugins</groupId>    <artifactId>maven-assembly-plugin</artifactId>    <version>2.6</version>    <configuration>        <descriptors>            <descriptor>xxx/assembly.xml</descriptor>        </descriptors>        <finalName>包名</finalName>        <appendAssemblyId>false</appendAssemblyId>    </configuration></plugin><!--上述插件依赖assembly.xml,该文件定义打包的详细规则-->    <assembly>    <id>package</id>    <formats>        <format>tar.gz</format><!--打成包的格式比如zip-->    </formats>    <includeBaseDirectory>true</includeBaseDirectory>    <baseDirectory>${artifactId}</baseDirectory>    <moduleSets>        <moduleSet>            <useAllReactorProjects>true</useAllReactorProjects>            <includes>                <include>xxxxxx</include>            </includes>            <sources>                <includeModuleDirectory>false</includeModuleDirectory>                <fileSets>                    <fileSet>                        <directory>src/main/resources</directory>                        <includes>                            <include>                            ....                            </include>                        </includes>                        <filtered>true</filtered>                        <outputDirectory>conf</outputDirectory>                    </fileSet>                </fileSets>            </sources>        </moduleSet>    </moduleSets>    <dependencySets>        <dependencySet>            <outputDirectory>lib</outputDirectory>            <scope>runtime</scope>        </dependencySet>    </dependencySets></assembly>    

关于assembly.xml的更多配置,请参考这里

5 tomcat7-maven-plugin 自动部署到tomcat, 配置与使用请见maven项目自动部暑一文。

6 buildnumber-maven-plugin与build-helper-maven-plugin自动生成时间戳,打包时常用,具体使用方法见maven打包加时间戳一文。

7 maven-war-plugin 打war包

<plugin>    <groupId>org.apache.maven.plugins</groupId>    <artifactId>maven-war-plugin</artifactId>    <version>2.6</version>    <configuration>        <webResources>            <resource>                <directory>target/xxx</directory>                <targetPath>xx/classes</targetPath>            </resource>        </webResources>    </configuration></plugin>

(未完,待补充。。。)

1 0
原创粉丝点击