【Maven-plugin】有多少官方插件?

发布于:2025-03-18 ⋅ 阅读:(18) ⋅ 点赞:(0)

之前疏理了容器底层原理,现在回归主题,在阅读 next-public时发现 parent 将从多基础插件集成到 parent 仓库中单独维护,数量众多,故在此将所有插件分类整理。以达观其全貌,心中有数。
以下是 Apache Maven 官方维护的核心插件列表(按功能分类),这些插件的 Group ID 通常是 org.apache.maven.plugins。由于版本和插件会随 Maven 更新而变化,需结合官方文档使用。


构建生命周期插件

  1. maven-clean-plugin
    清理构建生成的目录(如 target)。
  2. maven-resources-plugin
    复制资源文件到输出目录(如 src/main/resourcestarget/classes)。
  3. maven-compiler-plugin
    编译 Java 源代码(配置 JDK 版本、编码等)。
  4. maven-surefire-plugin
    执行单元测试(默认运行 **/Test*.java)。
  5. maven-failsafe-plugin
    执行集成测试(支持 pre-integration-testpost-integration-test 阶段)。
  6. maven-jar-plugin
    打包项目为 JAR 文件。
  7. maven-war-plugin
    打包 Web 应用为 WAR 文件。
  8. maven-ear-plugin
    打包企业应用为 EAR 文件。
  9. maven-install-plugin
    将构建产物安装到本地仓库。
  10. maven-deploy-plugin
    将构建产物部署到远程仓库。

报告生成插件

  1. maven-site-plugin
    生成项目文档站点(如 mvn site)。
  2. maven-javadoc-plugin
    生成 JavaDoc 文档。
  3. maven-project-info-reports-plugin
    生成项目信息报告(依赖、开发者列表等)。
  4. maven-surefire-report-plugin
    生成单元测试报告。
  5. maven-checkstyle-plugin
    生成代码风格检查报告。
  6. maven-pmd-plugin
    生成代码静态分析报告(PMD)。
  7. maven-jxr-plugin
    生成源码交叉引用报告(便于在线查看代码)。

依赖管理插件

  1. maven-dependency-plugin
    分析依赖(如复制依赖项、列出依赖树)。
  2. maven-enforcer-plugin
    强制约束环境或依赖版本(如 JDK 版本、Maven 版本)。
  3. maven-versions-plugin
    管理依赖版本(检查更新、升级版本)。

工具类插件

  1. maven-help-plugin
    查看 Maven 信息(如 mvn help:effective-pom)。
  2. maven-archetype-plugin
    创建项目骨架(通过模板生成项目)。
  3. maven-release-plugin
    自动化项目发布流程(版本号管理、SCM 交互)。
  4. maven-shade-plugin
    打包包含依赖的 Uber-JAR(解决依赖冲突)。
  5. maven-assembly-plugin
    自定义打包格式(如 ZIP、TAR 或带依赖的 JAR)。
  6. maven-source-plugin
    生成源码包(附加到构建产物)。
  7. maven-jlink-plugin
    创建自定义 JRE 运行时(Java 9+ 模块化支持)。

其他常用插件

  1. maven-scm-plugin
    与版本控制系统(如 Git/SVN)交互。
  2. maven-antrun-plugin
    在 Maven 中运行 Ant 脚本(兼容旧项目)。
  3. maven-toolchains-plugin
    配置多版本 JDK 工具链。

官方扩展插件(Mojo 项目)

以下插件由 org.codehaus.mojo 维护,但被广泛视为“准官方”插件:

  • versions-maven-plugin
    管理依赖和插件版本。
  • exec-maven-plugin
    直接执行 Java 类或命令行程序。
  • license-maven-plugin
    管理代码许可证。
  • cobertura-maven-plugin
    生成代码覆盖率报告(Cobertura)。
  • buildnumber-maven-plugin
    生成唯一构建号。

官方文档

Maven Core Plugins
Maven Mojo Plugins