Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

jackboot

jackasher306MIT1.2.0

A cross-platform command line tool to create SpringBoot projects

cli, shell, springboot, generator

readme

JackBoot

npm version License

JackBoot 是一个跨平台命令行工具,用于快速创建标准化的 Spring Boot 项目骨架。通过简单的交互过程,生成包含完整目录结构和丰富依赖的项目模板,大大减少项目初始化时间。

特性

  • 🚀 跨平台支持:同时适用于 Windows、macOS 和 Linux 系统
  • 🧩 完整的项目骨架:生成标准的 Spring Boot 项目目录结构
  • 📦 丰富的依赖配置:预配置 MyBatis-Plus、Redis、Swagger、Knife4j 等常用依赖
  • 🛠️ 基础工具类:内置常用工具类和配置类
  • 🔄 多环境配置:预设开发、测试和生产环境配置
  • 📝 代码规范:符合主流 Java 代码规范的项目结构

安装

使用 npm 全局安装:

npm install -g jackboot

或者使用 yarn:

yarn global add jackboot

使用方法

创建新项目

只需在终端中执行:

jackboot

按照交互提示,输入项目名称后,JackBoot 将自动生成完整的 Spring Boot 项目骨架。

项目结构

JackBoot 生成的项目结构如下:

project-name/
├── src/
│   ├── main/
│   │   ├── java/
│   │   │   └── com/
│   │   │       └── jackasher/
│   │   │           └── project/
│   │   │               ├── config/              # 配置类
│   │   │               ├── controller/          # 控制器
│   │   │               ├── service/             # 服务接口
│   │   │               │   └── impl/            # 服务实现
│   │   │               ├── mapper/              # MyBatis Mapper接口
│   │   │               ├── model/               # 模型层
│   │   │               │   ├── pojo/            # 实体类
│   │   │               │   ├── request/         # 请求对象
│   │   │               │   ├── response/        # 响应对象
│   │   │               │   ├── dto/             # 数据传输对象
│   │   │               │   ├── vo/              # 视图对象
│   │   │               │   ├── param/           # 参数对象
│   │   │               │   ├── enums/           # 枚举类
│   │   │               │   ├── form/            # 表单对象
│   │   │               │   ├── event/           # 事件对象
│   │   │               │   ├── command/         # 命令对象(CQRS)
│   │   │               │   └── query/           # 查询对象(CQRS)
│   │   │               ├── common/              # 通用组件
│   │   │               ├── constant/            # 常量类
│   │   │               ├── exception/           # 异常处理
│   │   │               ├── util/                # 工具类
│   │   │               ├── job/                 # 定时任务
│   │   │               └── Application.java     # 启动类
│   │   └── resources/
│   │       ├── mapper/                          # MyBatis XML配置
│   │       ├── static/                          # 静态资源
│   │       ├── templates/                       # 模板文件
│   │       ├── application.properties           # 主配置文件
│   │       ├── application-dev.properties       # 开发环境配置
│   │       ├── application-test.properties      # 测试环境配置
│   │       └── application-prod.properties      # 生产环境配置
│   └── test/
│       └── java/                                # 测试代码
├── .gitignore                                  # Git忽略文件
├── pom.xml                                     # Maven配置
└── README.md                                   # 项目说明

内置依赖

JackBoot 预配置了以下常用依赖:

  • Spring Boot 3.1.7:最新稳定版本的Spring Boot框架
  • MyBatis-Plus 3.5.7:增强版的MyBatis ORM框架
  • MySQL Connector:MySQL数据库连接器
  • Druid 1.2.20:高性能数据库连接池
  • Redis & Redisson:缓存和分布式锁支持
  • Spring Session:会话管理
  • Knife4j 4.4.0:增强版Swagger API文档工具
  • SpringDoc OpenAPI:API文档支持
  • Lombok:代码简化工具
  • Hutool 5.8.25:Java工具类库
  • FastJSON2:高性能JSON处理库
  • EasyExcel:Excel处理工具
  • Commons Lang3/IO:Apache通用工具库
  • Validation:参数验证
  • AOP:面向切面编程支持
  • Actuator:应用监控

特色功能

  1. 标准化目录结构:遵循DDD和CQRS设计原则的项目结构
  2. 完整的错误处理:预配置全局异常处理和自定义业务异常
  3. 通用返回对象:统一的API响应格式
  4. 跨域配置:内置跨域支持,可通过配置文件自定义
  5. Redis工具类:预配置Redis操作服务
  6. 数据库支持:配置好的MyBatis-Plus和分页插件

最佳实践

  • 项目生成后,首先修改application.properties中的数据库连接信息
  • 使用内置的ErrorCodeBusinessException处理业务异常
  • 利用ResultUtils构建统一的API响应
  • API文档可通过访问http://localhost:8080/doc.html查看

贡献指南

欢迎贡献代码或提出建议!请遵循以下步骤:

  1. Fork 本仓库
  2. 创建你的特性分支 (git checkout -b feature/amazing-feature)
  3. 提交你的更改 (git commit -m 'Add some amazing feature')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 开启一个 Pull Request

许可证

本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件。

联系方式

如有问题或建议,请通过以下方式联系我们: