Agent Skills
返回列表
Gradle 转 Maven 工程迁移

Gradle 转 Maven 工程迁移

开发编程 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_50dee564/gradle2maven。

技能介绍

解决的问题

多模块 Gradle 工程迁移到 Maven 时,build.gradle、settings.gradle、版本变量、子模块坐标和 annotation processor 配置很容易遗漏。直接原地改写也会污染原始工程,导致回滚困难。

如何工作

该技能会把原项目复制到 ${projectName}_mvn 或指定目录,只在副本中生成根 pom.xml 与子模块 pom.xml。它会解析 Gradle DSL,映射依赖 scope,处理 project(':module') 本地依赖、嵌套模块、annotationProcessor 与无法解析版本的占位项,然后运行 mvn validate。零错误后才清理副本中的 Gradle 文件,并输出迁移报告。

适用边界

它适合常规 Java 多模块 Gradle 到 Maven 的工程转换,尤其关注 compile、provided、runtime、test 等 scope 映射。Palantir baseline、Conjure、Protobuf 等代码生成链路没有 Maven 等价物时,只能跳过并标注人工处理;mvn validate 未通过前不会执行清理。

使用场景

  • 接手多模块 Gradle 工程,需要在保留原目录的前提下生成可 mvn validate 的 Maven 副本。
  • 将 build.gradle 中 api、implementation、compileOnly、runtimeOnly 映射到 Maven scope,并集中管理版本。
  • 处理 settings.gradle 的 :parent:child 嵌套结构,生成根、parent、child 对应的 pom.xml 与 relativePath。
  • 为含 annotationProcessor 的 Java 工程生成 compiler plugin 配置,并用 mvn validate 验证依赖解析。

适合人员

  • 维护多模块 Java 服务的后端工程师,需要把 Gradle 构建成可 mvn validate 的 Maven 副本。
  • 接手历史 Gradle 工程的应用工程师,需要生成根和子模块 pom.xml 并保留原工程用于回滚。
  • 负责构建链路迁移的平台工程师,需要核对 scope 映射、版本集中管理和 annotationProcessor 配置。
  • 使用 Palantir Conjure 或 baseline 插件的工程师,需要跳过 Gradle 专属插件并记录 Maven 侧人工项。