【问题标题】:Preventing JHipster import-jdl from overwriting changes when updating entities更新实体时防止 JHipster import-jdl 覆盖更改
【发布时间】:2020-02-13 13:00:42
【问题描述】:

在我当前的工作流程中,我必须在每次 import-jdl 触及我更改的实体后检查 git 并手动读取添加的功能等更改。

有没有办法在不实际更改文件的情况下将函数添加到 JHipster 创建的类中?像带有注释的代码生成或扩展 JHipster 创建的分类?我觉得我错过了来自 JHipster 的一些重要文档,我将不胜感激您提供正确方向的指示。

谢谢!

【问题讨论】:

    标签: jhipster


    【解决方案1】:

    我在我的一个项目中遇到了这个问题,恐怕没有简单的方法告诉 JHipster 不要覆盖您的更改。

    好消息是您有两种方法可以缓解这种情况,并且都可以让您的生活更轻松。

    在单独的分支中更新您的实体

    我们的想法是在不同的分支中更新您的实体(执行import-jdl 命令),然后在整个过程完成后将更改合并回主控。

    这不需要对您的代码进行额外的更改。我使用这种方法遇到的问题是,有时合并并非微不足道,我仍然需要检查大量代码才能确保一切都还在原处并正常工作。

    不要更改生成的代码

    这被称为并排练习。一般的想法是您永远不会直接更改生成的代码,而是将自定义代码放在新文件中并尽可能扩展原始文件。

    这样您可以更新您的实体,而 JHipster 永远不会删除或修改您的自定义代码。

    有两个视频可以教您(通过示例)如何管理:

    在我看来这是最好的方法。

    我知道这可能不是您要寻找的答案,但据我所知没有更好的方法。

    【讨论】:

    • 如果没有人能提供更好的答案,您将获得赏金。谢谢
    • 有没有办法在不使用“/api/extension/...”的情况下扩展资源?
    • 对不起,我不认为有办法做到这一点(至少我不知道)。您不能让两个控制器共享相同的映射,因为 Spring 会向您抛出 Ambiguous mapping。这是 spring 本身非常核心的东西,所以你唯一的机会就是拥有不同的映射。
    猜你喜欢
    • 2016-10-06
    • 2016-10-30
    • 2018-10-04
    • 2019-08-08
    • 2017-10-21
    • 2021-01-14
    • 2021-07-20
    • 1970-01-01
    相关资源
    最近更新 更多