mybatis插件generatorConfiguration.xml配置中http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd报红

如下图配置文件出现报红:

报错信息如下:URI is not registered (Settings | Languages & Frameworks | Schemas and DTDs)

中文意思就是统一资源标识符没有注册

解决方案1:

                 将这个标识符手动添加到IDEA中,首先复制报红色的那串代码(只要红色的部分),然后按照步骤添加就行。

 file --> settings- -> languages & frameworks -->Schemas and DTDs 点击下方的 “+” 加号添加刚刚红色的url 即可。

步骤一:点击file --> settings

步骤二:点击languages & frameworks -->Schemas and DTDs

步骤三:点击下方的 “+” 加号添加报红的url,点击OK

步骤四:列表出现报红的URI即为添加成功,点击apply再点击Ok即可

返回配置文件,可以看到红色提示消失,控制台报错消失

是不是感觉很麻烦,其实还有实现方案1的另一种快捷方式,鼠标点击红色部分,然后IDEA出现小红灯,选择Ignore external resource即可解决 。(效果跟上面方案一的效果一样)

如图所示,可以看到已经成功添加

解决方案2:

                 鼠标点击红色部分,然后IDEA出现小红灯,选择Fetch external resource即可解决 。

第一次获取外部资源的时候会出现如下问题

直接点击try again,应该大部分人都能获取成功了,如下图所示标红部分消失(如果有小伙伴try again后还无法成功的欢迎在评论区和大家一起讨论一下,我暂时没有遇到该问题)

这时候可能有小伙伴疑惑了,为什么这样它标红就会消失了,idea究竟帮我们自动导入或配置了什么?很简单,像上面解决方案1一样,依次点击

file --> settings- -> languages & frameworks -->Schemas and DTDs

我们仔细观察可以发现idea在图中区域为我们添加注册了报红的URI

点击编辑进去查看详情

可以发现idea确实帮我们自动获取并注册了报红的URI,我们可以看到它具体位置

解决方案3:

                 Pom.xml添加依赖mybatis-generator-core.jar,运行maven导入,然后看一下报红是否消失,如果没有,close project ,在打开一下应该就可以了

 <!-- mybatis-generator-core 反向生成java代码-->
    <dependency>
      <groupId>org.mybatis.generator</groupId>
      <artifactId>mybatis-generator-core</artifactId>
      <version>1.3.7</version>
    </dependency>

或者不要上面依赖用build(tips:有的人用build的方式可能还是不行,尽量选择添加依赖,添加依赖后重新运行maven导入)

  <build>
        <plugins>
            <!--mybatis generator插件-->
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.7</version>
                <configuration>
                    <verbose>true</verbose>
                    <overwrite>true</overwrite>
                </configuration>
            </plugin>
        </plugins>
    </build>
 

解决方案4:

                 先去这个http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd网址下载一个dtd

再复制到你想要放置目标文件夹里(比如D:\programming\dtd),这里我的路径就不改了,直接用它下载好的文件存放路径(D:\Download)

然后复制下面这个 再去IDEA Settings手动添加URI资源注册
http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd

像上面解决方案1一样,依次点击

file --> settings- -> languages & frameworks -->Schemas and DTDs

看到External schemas and DTDs后点击加号添加报红的URI以及对应的资源路径,示例图如下

添加完成后点击OK关闭编辑窗口,在点击apply,点击OK后即可,如图报红消失

温馨提示:

               可能有小伙伴按照上面的解决方案来还是报红,这种情况有可能是IDEA的缓存导致的,可以先试试清除缓存重启一下。

以上就是这个问题的4种解决方案,那么这4种解决方案到底哪种更好呢?说实话,我也不太清楚,但我个人不建议选择第一种,至于实际情况看小伙伴的个人喜好了。如下图所示,我们可以发现他们第一、第二、第四种方案间的最大区别

第一种解决方案是在Ignore schemas and DTDs位置添加的,中文意思就是忽略架构和DTD,这个我也搞不太懂,反正感觉忽略掉一些警告性的操作都不太好

而第二种解决方案是在External schemas and DTDs位置添加的,中文意思就是外部架构和DTD,应该就是idea帮我们获取并导入了相应的资源,自动帮我们注册好了,个人比较推荐这种解决方案(第四种解决方案其实也是一样的效果,只不过需要自己下载资源文件并手动进行URI的添加注册)

文章彩蛋:

               不知道有没有小伙伴发现,其实这个报红根本就不影响我们项目的运行,怎么样,是不是感觉非常神奇?难道改了这么久白改了?哈哈哈,其实还是非常有必要修改一下的,因为可能不知道什么时候我们的项目就会因为这个问题出现bug或者无法运行的情况。当然更大的效果就是让一些追求完美的小伙伴看着心里舒服。至于原因是为什么,个人觉得可能是idea版本或者什么其他问题导致它无法正确的识别报红的这个URI,有会的小伙伴可以在评论留言讨论哟,主要是我个人也想知道原因。哈哈哈,这篇文章到这里就结束了,欢迎我们下次再见。

  • 10
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值