V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
xiaoyureed
V2EX  ›  Java

代码生成

  •  
  •   xiaoyureed ·
    xiaoyureed · Jul 16, 2022 · 4309 views
    This topic created in 1383 days ago, the information mentioned may be changed or developed.

    Java 里面借助模板引擎可以做代码生成的事情, 比如做 web 开发生成 crud api.

    我在用 ruoyi 框架, 每次生成完之后都需要手动拷贝生成的代码文件到合适的地方, 重启整个应用. 我在想能不能将这个过程自动化, 比如提供一个界面, 点击生成, 新生成的代码会插入到源码合适的位置, 自动编译打包重启, 过一会就可以访问新生成的 api.

    请问各位老哥, 有已经开源的框架吗

    16 replies    2022-07-16 15:51:49 +08:00
    MEIerer
        1
    MEIerer  
       Jul 16, 2022
    我还以为是你做了个工具呢,我目前也想搞个类似 cli 工具那样的代码生成,一个一个写太累人了
    pocketz
        2
    pocketz  
       Jul 16, 2022
    什么叫:合适的位置
    xiaoyureed
        3
    xiaoyureed  
    OP
       Jul 16, 2022
    @pocketz 在 ruoyi 里头, 生成的代码里头有`package xxxx.xxx` , 固定好了位置, 得手动拷贝过去
    kidult
        4
    kidult  
       Jul 16, 2022
    你需要的是 CI 工具
    pocketz
        5
    pocketz  
       Jul 16, 2022
    @xiaoyureed 我记得若依生成的代码压缩包是有文件夹层次的,你不如写个脚本+ spring dev tool
    neptuno
        6
    neptuno  
       Jul 16, 2022 via iPhone
    @xiaoyureed #3 会出现代码写到一半,你修改了表结构,不小心重新生成覆盖的问题。到时候哭都来不及
    yungo8
        7
    yungo8  
       Jul 16, 2022 via Android
    若依好像可以生成代码到指定路径吧
    codehz
        8
    codehz  
       Jul 16, 2022 via iPhone
    我记得 gradle 可以指定源码读取的位置( maven 也可以)不需要手动复制)
    adimn
        9
    adimn  
       Jul 16, 2022
    自己去改生成代码的源码就行了,我改了生成到指定文件,顺带把 加菜单的 sql 也执行了
    ming159
        10
    ming159  
       Jul 16, 2022
    你可以看看 JeecgBoot ... 功能更强一点.
    另外你可以将生成代码的路径直接指向源码目录,然后配合 JRebel 这种热更新的工具就能达到你期望的目标.

    当然生成的代码的目录结构与源码目录结构可能不同,这时候你可以自己搞个目录监控,将生成的源码自动拷贝到源码对应的目录下即可.
    ericls
        11
    ericls  
       Jul 16, 2022 via iPhone
    谁生成 谁维护
    aguesuka
        12
    aguesuka  
       Jul 16, 2022
    关键字 generated-sources, 复制到源目录不是好办法
    siweipancc
        13
    siweipancc  
       Jul 16, 2022 via iPhone
    ……用过半成品,老总要求的低代码平台,交了 2w 的学费,浪费双方生命
    summerLast
        14
    summerLast  
       Jul 16, 2022
    输出流的的输出位置调整一下即可
    ljsh093
        15
    ljsh093  
       Jul 16, 2022
    好像可以搞 groovy 脚本
    Jtyczc
        16
    Jtyczc  
       Jul 16, 2022
    easy code 插件
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5056 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 81ms · UTC 01:10 · PVG 09:10 · LAX 18:10 · JFK 21:10
    ♥ Do have faith in what you're doing.