You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Maven多模块项目中Telosys代码生成的包路径问题及跨模块需求

Telosys多模块Maven项目代码生成的包路径问题解决办法

问题根源

你遇到的包路径错误,是因为Telosys默认把当前项目根目录作为路径基准,而你的$SRC只设了src/main/java,没包含子模块的前缀(比如service-core/),导致target.javaPackageFromFolder方法找不到正确的源码目录,抛出路径错误。

可行的解决思路

1. 自定义子模块路径变量(快速适配)

直接在Telosys的全局配置里给每个子模块定义根路径变量,然后在模板和生成配置里组合使用:

  • 打开父项目的telosys-tools.cfg,添加子模块变量:
    # 子模块根路径定义
    SERVICE_CORE = service-core
    DTO_PUBLIC = dto-public
    API_PUBLIC = api-public
    
  • 修改模板里的包路径代码,把${SRC}换成${SERVICE_CORE}/${SRC}这类组合路径:
    # service-core模块的模板包声明
    package ${target.javaPackageFromFolder(${SERVICE_CORE}/${SRC})};
    
  • 同时在templates.cfg里更新生成目录:
    # 生成service-core的模型类
    template   : java-model.vm
    folder     : ${SERVICE_CORE}/${SRC}/${ROOT_PKG}/model/
    overwrite  : true
    
    同理,给dto-public、api-public分别配置对应的模板和目录即可。

2. 用Telosys项目组管理(推荐方案)

Telosys自带的项目组功能专门解决多模块场景,不用在每个子模块单独初始化Telosys:

  • 在父项目的.telosys目录下新建projects文件夹,给每个子模块创建独立的配置文件:
    • .telosys/projects/service-core/project.cfg:
      SRC = service-core/src/main/java
      ROOT_PKG = com.yourcompany.servicecore
      
    • .telosys/projects/dto-public/project.cfg:
      SRC = dto-public/src/main/java
      ROOT_PKG = com.yourcompany.dtopublic
      
  • 回到父项目的templates.cfg,给每个生成任务指定对应的项目:
    # 生成service-core的模型类
    template   : java-model.vm
    folder     : ${SRC}/${ROOT_PKG}/model/
    project    : service-core
    overwrite  : true
    
    # 生成dto-public的DTO类
    template   : java-dto.vm
    folder     : ${SRC}/${ROOT_PKG}/dto/
    project    : dto-public
    overwrite  : true
    
    这样每个生成任务会自动加载对应子模块的SRC和ROOT_PKG变量,target.javaPackageFromFolder就能正确解析包路径了。

3. 直接硬编码包名(简单粗暴)

如果你的包结构固定,不想折腾路径解析,直接在模板里写死包名:

package com.yourcompany.servicecore.model;

或者用${ROOT_PKG}拼接:

package ${ROOT_PKG}.model;

这种方式跳过路径解析逻辑,直接生成正确的包声明,适合包结构不会频繁变动的场景。

验证步骤

配置完之后,先在Telosys控制台输入variables命令,检查变量值是否正确(比如SERVICE_CORE/${SRC}是否等于service-core/src/main/java),确认没问题再执行代码生成。

内容的提问来源于stack exchange,提问作者Michael Ressler

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 17:30:59