Maven常用插件

Maven常用插件

1. maven-compiler-plugin

该插件用于编译源码。如果不指定使用哪个jdk版本编译的话,就会用maven-compiler-plugin默认的jdk版本进行处理,这样容易出现版本不匹配的问题。为了处理这个情况,在构件maven项目的时候,可以使用maven-compiler-plugin插件。如下:

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-compiler-plugin</artifactId>

<version>3.1</version>

<configuration>

<source>1.5</source>

<target>1.5</target>

</configuration>

</plugin>

2. maven-jar-plugin

该插件用于设置主类,因为默认的mvn install生成的jar是不带主类入口的

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-jar-plugin</artifactId>

<configuration>

<archive>

<manifest>

<!-- 设置classpath路径 -->

<addClasspath>true</addClasspath>

<!-- 设置主类入口 --><mainClass>uk.ac.liv.jt.viewer.JTViewer</mainClass>

</manifest>

</archive>

</configuration>

</plugin>

3. maven-assembly-plugin

该插件能打包项目为指定格式,更重要的是能能够自定义包含/排除指定的目录或文件。如下:

<plugin>

<artifactId>maven-assembly-plugin</artifactId>

<executions>

<execution>

<!-- 绑定到package阶段,自动打包; -->

<id>assemble</id>

<phase>package</phase>

<goals>

<goal>single</goal>

</goals>

<configuration>

<descriptors>

<!-- 指定一个Assembly描述符文件,该文件指定了打包格式,包含的文件/过来的文件等信息,可以同时指定多个描述符文件,打包成不同的格式。 --><descriptor>src/main/assembly/jtv.xml</descriptor>

</descriptors>

</configuration>

</execution>

</executions>

<configuration>

<finalName>JTViewer</finalName>

</configuration>

</plugin>


描述符文件jtv.xml:

<assembly

xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">

<id>JTV</id>

 

<formats>

<format>zip</format><!-- 打包的文件格式 -->

</formats>

<dependencySets>

<dependencySet>

</dependencySet>

</dependencySets>

<fileSets>

<fileSet>

<directory>src/main/doc</directory>

<outputDirectory>/</outputDirectory>

<includes>

<include>**</include>

</includes>

<useDefaultExcludes>true</useDefaultExcludes>

<!-- 也可以自定义excludes,如下,即表示打包时,排除WEB-INF/lib/*目录下所有的文件。

 <excludes>  

                <exclude>WEB-INF/lib/*</exclude>  

            </excludes> 

-->

</fileSet>

</fileSets>

</assembly>

发布了37 篇原创文章 · 获赞 14 · 访问量 10万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章