← ClaudeAtlas

spring-boot-initlisted

Spring Boot / Maven 项目初始化(脚手架)助手——用内置 Maven 父子标准模板,经 scripts/init.mjs 一条命令生成项目骨架(复制模板 / 替换占位符 / 挪包目录 / 模块塑形一体),零网络、完全本地自包含; 禁止从零手写 pom.xml 与主启动类,也不依赖在线初始化器。在以下场景使用:用户要新建 / 初始化 / 搭建 Spring Boot、Maven 项目;用户说"建个 Spring Boot 项目 / 搭脚手架 / 建父子工程 / 多模块 / 微服务骨架 / init 一个 Java 项目";或 agent 正准备从零手写 pom、手动创建目录结构与主启动类时。 默认产物:根 pom(packaging=pom + <modules>)+ 子模块,单模块(只留一个 app 子模块)与多模块 一套模板覆盖;生成前引导式问询四检查点,禁止静默默认。项目已存在后的业务编码、ORM、认证鉴权、 单元测试不适用——由 spring-boot-dev / mybatis-plus-dev / sa-token-dev / java-unit-test 承接。
BaixuanZhu/skills · ★ 0 · Testing & QA · score 78
Install: claude install-skill BaixuanZhu/skills
# Spring Boot 项目初始化(脚手架) 面向"新建 Java 项目"场景的**初始化助手**。核心理念:**不从零手写脚手架——`scripts/init.mjs` 从内置 Maven 父子标准模板一键生成。** 零网络依赖,完全本地自包含。补上 `spring-boot-dev`(只管写代码、不管建项目)的空白。 - **默认产物**:根 pom(`packaging=pom` + `<modules>`)+ 子模块。**单模块项目 = 只保留一个 app 子模块**(`--single`);多模块 = 库模块 + 可执行模块(`--core` / `--app` 命名)。一套模板覆盖全部场景,不分叉。 - **模板** `assets/maven-multimodule/`:常用插件齐备——enforcer(环境门禁)、flatten(`${revision}` CI-friendly 版本)、jacoco(覆盖率)、spotless(格式化)默认激活;failsafe / source / javadoc / deploy 已管理、按需启用。版本全部收敛在根 pom。lombok 为根公共依赖(全局生效);hutool-bom 在根 import(core / json / http 等按模块按需引,`references/02-dependencies.md`);内置阿里云镜像加速(用户级 settings.xml 镜像优先生效)。 - **初始依赖**:按项目类型问询决定(`references/02-dependencies.md`),不默认堆。 ## 第 0 步:现状探测(收到任务先做) | 探测项 | 方法 | 判定 | |---|---|---| | 是否已有项目 | 当前目录是否已有 `pom.xml` / `build.gradle` | 已有 Maven 工程 → **本技能不适用**(加模块 / 加依赖直接参照工程内现有模块的结构即可);空目录 → 整体初始化 | | 子模块划分 | 预判(单服务 → 单模块形态;分层 / 多可部署单元 → 多模块),最终以 C1 问询为准 | 决定 `<modules>` 数量与命名(不预设 common/web 等固定划分) | | Boot / JDK 版本 | 用户指定;否则按 C2 表默认 | 作为 init.mjs 的 `--boot` / `--jdk` 参数 | ## 何时使用本技能 | 信号 | 判定 | |------|------| | 用户说"新建 / 初始化 / 搭建 Spring Boot、Maven 项目""建父子工程""多模块""微服务骨架""init 一个 Java 项目" | 激活 | | agent 正准备从零手写 `pom.xml` / 目录结构 / 主启动类 | 激活(改为 init.mjs 生成) | | 要给新项目定初始依赖 | 激活 → `references/02-dependencies.md` | | 项目已存在,要写 Controller / Service / 事务 / 配置 | **不适用** → spring-boot-dev | | ORM CRUD / Mapper / 分页 | **不适用** → mybatis-plus-dev | | 认证 / 鉴权 / token | **不适用** → sa-token-dev | | 纯 Java 语言层(判空 / 集合 / 并发) | **不适用** →