121 項目 008 筆記向 maven-study 經常使用插件

test

<reporting>
        <plugins>
            <!-- mvn cobertura:help 查看cobertura插件的幫助 -->
            <!-- mvn cobertura:clean 清空cobertura插件運行結果 -->
            <!-- mvn cobertura:check 運行cobertura的檢查任務 -->
            <!-- mvn cobertura:cobertura 運行cobertura的檢查任務並生成報表,報表生成在target/site/cobertura目錄下 -->
            <!-- cobertura:dump-datafile Cobertura Datafile Dump Mojo -->
            <!-- mvn cobertura:instrument Instrument the compiled classes -->
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>cobertura-maven-plugin</artifactId>
                <version>2.5.1</version>
            </plugin>
            <!-- mvn surefire-report:report 生成 html 格式測試報告 -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-report-plugin</artifactId>
                <version>2.19.1</version>
                <configuration>
                    <showSuccess>true</showSuccess>
                </configuration>
            </plugin>
        </plugins>
    </reporting>

其中 cobertura 能夠生成測試覆蓋率,這個算是我常用的一個插件了。html

maven-surefire-report-plugin 能夠生成HTML格式的測試報告,不過我以爲這個插件和gradle生成的HTML報告比起來真是弱爆了-_-#!java

package

<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <version>2.2.1</version>
                <executions>
                    <execution>
                        <id>helli-idea-package</id>
                        <phase>package</phase>
                        <goals>
                            <goal>jar</goal>
                            <goal>test-jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

這樣你在運行 mvn:package 的時候就能夠將源碼與測試代碼也打包成 jar 文件,並且主代碼與測試代碼是分開的,效果以下:git

輸入圖片說明

這個功能還不錯,之後給別人代碼的時候會很方便,不過我仍是以爲git地址來得更加直接一點。web

部署插件

關於 maven 的與web容器有關的插件,我知道的有三個apache

  • jetty
  • cargo
  • tomcat7-maven-plugin

這其中jetty我沒用過,cargo用着非常麻煩,最後一個是apache的,用起來最簡單。tomcat

cargo 的資料:mvc

Maven使用Cargo實現自動化部署maven

tomcat7-maven-plugin 的使用可參考我以前的博客ide

Maven tomcat插件實現熱病部署測試

compile

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
    <configuration>
        <source>1.7</source>
        <target>1.7</target>
    </configuration>
</plugin>

這個插件的做用就是配置開發時的編譯環境,之前的時候我是配置在settings.xml中的,不過如今我會發儘可能地不去修改settings.xml文件

exec

<!-- 運行 java 類 -->
<!-- 必須先使用 mvc compile 編譯 -->
<!-- mvn exec:java -->
<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>1.4.0</version>
    <executions>
        <execution>
            <goals>
                <goal>java</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <mainClass>com.laolang.gongda.helloidea.cal.CalMain</mainClass>
        <!-- 能夠加入命令行參數 -->
        <!--<arguments>-->
            <!--<argument>arg0</argument>-->
            <!--<argument>arg1</argument>-->
        <!--</arguments>-->
    </configuration>
</plugin>

這個插件能夠比較方便的執行java的main方法。關於使用maven運行java main方法,能夠參考下面的博客:

使用Maven運行Java main的3種方式

相關文章
相關標籤/搜索