码迷,mamicode.com
首页 > 其他好文 > 详细

解决mybatis generator无法覆盖XML

时间:2018-12-05 10:18:38      阅读:1443      评论:0      收藏:0      [点我收藏+]

标签:取消   增加   lex   问题   查看   mod   http   rop   意思   

今天发现mybatis generator maven plugin在重复生成的时候xml文件只会merge,不会覆盖。

明明在pom.xml中配置了如下:

<configuration>
    <configurationFile>src/main/resources/mybatis/generatorConfig.xml</configurationFile>
    <verbose>true</verbose>
    <overwrite>true</overwrite>
</configuration>

github上查找与overwrite相关的issue,找到了这个提交。

技术分享图片

上面的意思是:当你取消了所有注释,你在重复运行generator时在mapper.xml中会出现重复的元素。并且这个plugin可以解决这个问题,版本是1.3.7

去查看generatorConfiguration,确实配置了取消生成注释。

<!-- 配置生成器 -->
<generatorConfiguration>

    <properties resource="mybatis/jdbc.properties"/>

    <context id="MyBatis" targetRuntime="MyBatis3"  defaultModelType="flat">

        <!-- 不生成注释 -->
        <commentGenerator>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
        
    ... ...

<generatorConfiguration>

那怎么既想取消注释又想覆盖XML文件生成呢?答案就是上面说的使用UnmergeableXmlMappersPlugin

在<context>下增加一个<plugin>

<!-- 配置生成器 -->
<generatorConfiguration>

    <properties resource="mybatis/jdbc.properties"/>

    <context id="MyBatis" targetRuntime="MyBatis3"  defaultModelType="flat">

        <!--覆盖生成XML文件-->
        <plugin type="org.mybatis.generator.plugins.UnmergeableXmlMappersPlugin" />
        
        <!-- 不生成注释 -->
        <commentGenerator>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>

    ... ...

<generatorConfiguration>

 

GitHub地址:https://github.com/syoukaihou/sbsm

解决mybatis generator无法覆盖XML

标签:取消   增加   lex   问题   查看   mod   http   rop   意思   

原文地址:https://www.cnblogs.com/xxoome/p/10068780.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!