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萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章