Maven編譯期管理插件——maven-compiler-plugin

maven-compiler-plugin

Maven是Java的項目管理工具 , 能夠利用方便的插件依賴,來幫咱們方便的管理項目的各個生命週期。java

在項目開發過程當中常常遇到:apache

  • 代碼編寫與Java編譯器版本不兼容問題
  • 文件編碼與項目編碼不一致問題
  • Maven某聲明週期執行過程當中遇到測試單元自動執行問題

當遇到上面問題時,咱們有針對IDEA 工具層面的修正, 但針對pom更新時, 原有的修正又會回到默認的配置。開發過程當中遇到不少相關的困擾 。 針對這些問題,Maven提供一 插件依賴,來提供編譯器,編碼,是否跳過測試用例,引包 等默認配置。maven

<plugin>
    <!-- 指定maven編譯的jdk版本,若是不指定,maven3默認用jdk 1.5 maven2默認用jdk1.3 -->
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.5.1</version>
    <configuration>
        <!-- 通常而言,target與source是保持一致的,可是,有時候爲了讓程序能在其餘版本的jdk中運行(對於低版本目標jdk,源代碼中不能使用低版本jdk中不支持的語法),會存在target不一樣於source的狀況 -->
        <source>1.8</source> <!-- 源代碼使用的JDK版本 -->
        <target>1.8</target> <!-- 須要生成的目標class文件的編譯版本 -->
        <encoding>UTF-8</encoding><!-- 字符集編碼 -->
        <skip>true</skip><!-- 跳過測試 --> 
        <verbose>true</verbose>
        <showWarnings>true</showWarnings>
        <fork>true</fork><!-- 要使compilerVersion標籤生效,還須要將fork設爲true,用於明確表示編譯版本配置的可用 -->
        <meminitial>128m</meminitial><!-- 編譯器使用的初始內存 --> 
        <maxmem>512m</maxmem><!-- 編譯器使用的最大內存 --> 
        <compilerArgument>-verbose -bootclasspath ${java.home}\lib\rt.jar</compilerArgument><!-- 這個選項用來傳遞編譯器自身不包含可是卻支持的參數選項 -->
    </configuration>
</plugin>

Maven是項目管理工具, 利用引用pom的插件式管理,來起到修改默認配置的功能 。 此處是一體現。工具

相關文章
相關標籤/搜索