iPLAT4J 模板脚手架命令行工具(TypeScript + tsup)。
- 内置模板:
v6-gbase、v7-dm - 命令参数:
commander - 交互输入:
inquirer - 终端美化:
chalk - 默认执行:
mvn -DskipTests validate
全局安装(推荐):
npm i -g @irailmetro/rmt-cli升级:
npm update -g @irailmetro/rmt-cli卸载:
npm uninstall -g @irailmetro/rmt-cli本地开发调试:
cd rmt-cli
pnpm i
pnpm link --globalrmt -h
rmt -v
rmt create --help# 类型检查
npm run check
# 构建
npm run build
# e2e(模板生成规则校验)
npm run test:e2e
# CI 等价本地校验
npm run cirmt create --template v6-gbase --name rmplat4j-v6-gbase \
--groupId com.baosight.rmplat4j \
--artifactId rmplat4j-parent \
--projectName rmplat4j \
--moduleName rm \
--keep-demo不带参数时按顺序交互:
- template
- name
- groupId
- artifactId
- projectName
- moduleName
- keepDemo
- 包名:
com.baosight.<projectName> - service 包:
com.baosight.<projectName>.<moduleName> - 模块 artifactId:
<projectName>-bom/common/service/web - 示例代码策略:
- 默认:删除
demo/dm示例代码,仅新增目录:common/src/main/java/com/baosight/<projectName>/<moduleName>service/src/main/java/com/baosight/<projectName>/<moduleName>service/src/main/resources/META-INF/resources/<MODULE_NAME_UPPERCASE>web/src/main/java/com/baosight/<projectName>- 同时删除示例页面资源:
service/src/main/resources/META-INF/resources/DM
- 传
--keep-demo:保留模板里的demo/dm示例代码,同时新增以上目录
- 默认:删除
- 启动类策略(与
--keep-demo无关):- 模板
DemoApplication.java会统一转换为com.baosight.<projectName>.<ProjectName>Application - 文件名、类名、类内
DemoApplication.class引用同步替换
- 模板
--skip-validate:跳过mvn -DskipTests validate--force:目标目录非空时覆盖--output <dir>:指定输出父目录--template-dir <dir>:覆盖内置模板目录--keep-demo:保留模板中的demo/dm示例代码
npm run ci
npm publish --access public仓库内置工作流:
发布步骤:
# 1) 提交代码
git add .
git commit -m "chore: release v0.2.2"
git push
# 2) 打 tag(版本号需与 package.json 一致)
git tag v0.2.2
git push origin v0.2.2说明:
release.yml会校验package.json的 version 是否与 tag 一致,不一致会失败。- 发布命令为
npm publish --access public --provenance。 - 可用
NPM_TOKEN(GitHub Secret)发布;也可配置 npm Trusted Publishing(OIDC)。