Skip to content

ZTO-Express/titans-idea-plugin

Repository files navigation

MyBatis 代码生成器插件

通过解析 DDL 建表语句自动生成 MyBatis 实体类、Mapper 接口和 XML 映射文件的 IntelliJ IDEA 插件。

版本要求

  • 最低支持: IntelliJ IDEA 2023.2+ (build 232+)
  • Java 版本: Java 17+

构建和调试

方法一:使用 Gradle 命令(推荐)

1. 运行插件进行调试

在项目根目录执行:

./gradlew runIde

或者在 Windows 上:

gradlew.bat runIde

这会:

  • 编译插件代码
  • 启动一个新的 IDEA 实例(沙盒环境)
  • 插件已安装并可用

2. 构建插件 JAR 文件

./gradlew buildPlugin

构建完成后,JAR 文件位于:build/distributions/titans-idea-plugin-1.0-SNAPSHOT.zip

3. 验证插件

./gradlew verifyPlugin

方法二:在 IDEA 中运行

  1. 打开项目

    • 在 IntelliJ IDEA 中打开此项目
  2. 运行配置

    • 打开 RunEdit Configurations...
    • 点击 + → 选择 Gradle
    • 配置如下:
      • Name: Run Plugin
      • Gradle project: 选择项目
      • Tasks: runIde
    • 点击 OK
  3. 运行插件

    • 点击运行按钮或按 Shift+F10
    • 会启动一个新的 IDEA 实例,插件已安装
  4. 调试插件

    • 在代码中设置断点
    • 使用 Debug 模式运行(点击调试按钮或按 Shift+F9
    • 在新启动的 IDEA 实例中使用插件功能
    • 断点会在调试模式下暂停

方法三:安装到现有 IDEA 实例

  1. 构建插件

    ./gradlew buildPlugin
  2. 安装插件

    • 打开 IDEA → SettingsPlugins
    • 点击 ⚙️Install Plugin from Disk...
    • 选择 build/distributions/titans-idea-plugin-1.0-SNAPSHOT.zip
    • 重启 IDEA

使用插件

启动插件

  1. 在新启动的 IDEA 实例中,打开任意项目
  2. 通过以下方式打开插件:
    • 菜单: ToolsMyBatis 代码生成器
    • 快捷键: Ctrl+Alt+M (Mac: Cmd+Option+M)

使用步骤

  1. 输入 DDL

    • 在 "DDL 输入" 选项卡中输入 MySQL 建表语句
    • 示例:
      CREATE TABLE `user` (
        `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
        `username` VARCHAR(50) NOT NULL COMMENT '用户名',
        `email` VARCHAR(100) COMMENT '邮箱',
        `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
        PRIMARY KEY (`id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户表';
  2. 解析 DDL

    • 点击 "解析 DDL" 按钮
    • 如果解析成功,会显示表信息
  3. 配置选项

    • 切换到 "配置" 选项卡
    • 设置包名、目录、作者等信息
  4. 生成代码

    • 点击 "生成代码" 按钮
    • 代码将写入到配置的目录中

调试技巧

查看日志

插件运行时的日志位于:

  • 沙盒环境: build/idea-sandbox/IC-2023.2/log/idea.log
  • 已安装插件: HelpShow Log in Explorer/Finder

常见问题

  1. 插件未显示在菜单中

    • 检查 plugin.xml 中的 Action 配置是否正确
    • 查看日志文件是否有错误
  2. DDL 解析失败

    • 检查 DDL 语句格式是否正确
    • 查看控制台输出的错误信息
  3. 文件写入失败

    • 检查项目目录权限
    • 确认目录路径配置正确
  4. 编译错误

    • 确保已安装 Java 17
    • 运行 ./gradlew clean build 清理并重新构建

项目结构

src/main/java/com/zto/titansideaplugin/
├── action/              # Action 入口
│   └── MyBatisGeneratorAction.java
├── generator/           # 代码生成器
│   └── CodeGenerator.java
├── model/               # 数据模型
│   ├── TableInfo.java
│   ├── FieldInfo.java
│   └── GeneratorConfig.java
├── parser/              # DDL 解析器
│   └── DdlParser.java
├── ui/                  # UI 对话框
│   └── GeneratorDialog.java
└── util/                # 工具类
    └── FileWriter.java

开发环境要求

  • JDK 17
  • IntelliJ IDEA 2023.2 或更高版本
  • Gradle 8.0+

构建产物

  • 插件 JAR: build/distributions/titans-idea-plugin-1.0-SNAPSHOT.zip
  • 沙盒环境: build/idea-sandbox/

About

MyBatis Tk 代码生成器 / MyBatis Tk Code Generator

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published