exec-maven-plugin
http://mojo.codehaus.org/exec-maven-plugin/
exec-maven-plugin很好理解,顧名思義,它能讓你運行任何本地的系統程序,在某些特定情況下,運行一個Maven外部的程序可能就是最簡單的問題解決方案,這就是exec:exec的用途,當然,該插件還允許你配置相關的程序運行參數。除了exec目標之外,exec-maven-plugin還提供了一個java目標,該目標要求你提供一個mainClass參數,然后它能夠利用當前項目的依賴作為classpath,在同一個JVM中運行該mainClass。有時候,為了簡單的演示一個命令行Java程序,你可以在POM中配置好exec-maven-plugin的相關運行參數,然后直接在命令運行 mvn exec:java 以查看運行效果。
jetty-maven-plugin
http://wiki.eclipse.org/Jetty/Feature/Jetty_Maven_Plugin
在進行Web開發的時候,打開瀏覽器對應用進行手動的測試幾乎是無法避免的,這種測試方法通常就是將項目打包成war文件,然后部署到Web容器中,再啟動容器進行驗證,這顯然十分耗時。為了幫助開發者節省時間,jetty-maven-plugin應運而生,它完全兼容 Maven項目的目錄結構,能夠周期性地檢查源文件,一旦發現變更后自動更新到內置的Jetty Web容器中。做一些基本配置后(例如Web應用的contextPath和自動掃描變更的時間間隔),你只要執行 mvn jetty:run ,然后在IDE中修改代碼,代碼經IDE自動編譯后產生變更,再由jetty-maven-plugin偵測到后更新至Jetty容器,這時你就可以直接測試Web頁面了。需要注意的是,jetty-maven-plugin並不是宿主於Apache或Codehaus的官方插件,因此使用的時候需要額外的配置settings.xml
的pluginGroups元素,將org.mortbay.jetty這個pluginGroup加入。
Maven常用插件
=========Maven Report Plugin=========
1.源碼分析
<artifactId>maven-pmd-plugin</artifactId>
2.代碼格式檢查
<artifactId>maven-checkstyle-plugin</artifactId>
3.代碼相似度檢查
<groupId>org.codehaus.mojo</groupId> <artifactId>simian-maven-plugin</artifactId>
4.格式化統計報告
<groupId>org.codehaus.mojo</groupId> <artifactId>jdepend-maven-plugin</artifactId>
5.FireBug檢查
<groupId>org.codehaus.mojo</groupId> <artifactId>findbugs-maven-plugin</artifactId>
6.JavaDoc
<artifactId>maven-javadoc-plugin</artifactId>
7.生成java代碼交叉引用和源代碼的html格式
<artifactId>maven-jxr-plugin</artifactId>
8.代碼覆蓋率
<groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> <groupId>org.codehaus.mojo</groupId> <artifactId>emma-maven-plugin</artifactId>
9.java代碼的度量工具
<groupId>org.codehaus.mojo</groupId> <artifactId>javancss-maven-plugin</artifactId>
10.單元測試報告
<artifactId>maven-surefire-report-plugin</artifactId>
11.TODO檢查報告
<groupId>org.codehaus.mojo</groupId> <artifactId>taglist-maven-plugin</artifactId>
12.項目總報告
<artifactId>maven-project-info-reports-plugin</artifactId>
=========Maven Common Plugin=========
1.SCP文件傳輸
<groupId>com.github.goldin</groupId> <artifactId>copy-maven-plugin</artifactId>
2.SSH命令
<groupId>com.github.goldin</groupId> <artifactId>sshexec-maven-plugin</artifactId>
3.Maven Job
<groupId>com.github.goldin</groupId> <artifactId>jenkins-maven-plugin</artifactId>
4.生成about信息
<groupId>com.github.goldin</groupId> <artifactId>about-maven-plugin</artifactId>
5.查找重復依賴
<groupId>com.github.goldin</groupId> <artifactId>duplicates-finder-plugin</artifactId>
6.Maven郵件發送
<groupId>com.github.goldin</groupId> <artifactId>mail-maven-plugin</artifactId>
7.項目目錄查找
<groupId>com.github.goldin</groupId> <artifactId>find-maven-plugin</artifactId>
8.獲取SVN版本
<groupId>com.google.code.maven-svn-revision-number-plugin</groupId> <artifactId>maven-svn-revision-number-plugin</artifactId>
9.編譯C++
<groupId>org.codehaus.mojo</groupId> <artifactId>native-maven-plugin</artifactId>
10.DDL生成
<groupId>org.codehaus.mojo</groupId> <artifactId>hibernate3-maven-plugin</artifactId>
11.Eclipse RCP
<groupid>org.sonatype.tycho</groupid> <artifactid>target-platform-configuration</artifactid>
=========Maven Official Plugin=========
1.自動定義打包
<artifactId>maven-assembly-plugin</artifactId>
2.ANT
<artifactId>maven-antrun-plugin</artifactId>
=========Maven 全局屬性=========
1.源碼編碼
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> maven.compile.classpath maven.runtime.classpath maven.test.classpath maven.plugin.classpath
2.ClassPath
maven.compile.classpath maven.runtime.classpath maven.test.classpath maven.plugin.classpath
參考鏈接:常用Maven插件介紹(下) http://www.infoq.com/cn/news/2011/05/xxb-maven-8-plugin