您现在的位置是:网站首页 > 代码编程 > JAVA开发JAVA开发
【原】generate failed: Cannot instantiate object of type com.wolffy.jwcz.plugin.MyCommentGenerator
不忘初心 2020-10-09 围观() 评论() 点赞() 【JAVA开发】
简介:在上一篇文章中,给大家讲述了我是如何解决mybatis-generator不生成字段注释的问题,在我一开始尝试的时候,还碰见了一个小问题:“Failed to execute goal org.mybatis.generator:mybatis-generator-maven-plugin:1.3.6:generate (default-cli) on project dao: Execution default-cli of goal org.mybatis.generator:mybatis-generator-maven-plugin:1.3.6:generate failed: Cannot instantiate object of type com.wolffy.jwcz.plugin.MyCommentGenerator”,在这里给它记录下来。
在上一篇文章中,给大家讲述了我是如何解决mybatis-generator不生成字段注释的问题,在我一开始尝试的时候,还碰见了一个小问题:“generate failed: Cannot instantiate object of type com.wolffy.jwcz.plugin.MyCommentGenerator”,在这里给它记录下来。
手抖,错误信息没复制全,只有这一点儿了,大家将就着看一下。
Failed to execute goal org.mybatis.generator:mybatis-generator-maven-plugin:1.3.6:generate (default-cli) on project dao: Execution default-cli of goal org.mybatis.generator:mybatis-generator-maven-plugin:1.3.6:generate failed: Cannot instantiate object of type com.wolffy.jwcz.plugin.MyCommentGenerator
错误提示信息很清晰,就是说找不到我们自定义的那个CommentGenerator类,但是我确确实实有这个类,而且我保证路径没有写错。
<plugins>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.6</version>
<configuration>
<configurationFile>
${basedir}/src/main/resources/generatorConfig.xml
</configurationFile>
<overwrite>true</overwrite>
<verbose>true</verbose>
</configuration>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.41</version>
</dependency>
</dependencies>
</plugin>
</plugins>
上面是我在maven中集成mybatis-generator
插件的代码,直接运行就会报上面那个错,而在那个generatorConfig.xml
文件中,也确实引入了正确的plugin路径。
<!-- 使用自定义的插件 -->
<commentGenerator type="com.wolffy.jwcz.dao.plugin.MyCommentGenerator">
</commentGenerator>
PS:
MyCommentGenerator.java
和
generatorConfig.xml
文件,在文章开头引入的文章中有,这里不再重复写了。
折腾了一番之后,发现只要是使用maven插件方式来运行mybatis-generator
,而不是在自己的java代码中运行的,就会导致这个错误,在网上查了一下资料,出现这个问题的原因是:mybatis-generator 的plugin有自己的classpath,我们在项目中直接继承的类和plugin不属于同一个classpath。
Soga,不在同一个classpath之下,那我们就不能寄希望于mave了,只能老老实实自己写代码执行喽!!!
package com.wolffy.jwcz.dao;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.Configuration;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.internal.DefaultShellCallback;
/**
* 快速生成mybatis配置文件
* Created by SongFei on 2020/09/21.
*/
public class MybatisGenerator {
public static void main(String[] args) {
MybatisGenerator generator = new MybatisGenerator();
System.out.println(System.getProperty("user.dir"));
System.out.println(generator.getClass().getResource("/").getPath());
generator.run();
}
public void run() {
try {
InputStream resourceAsStream = this.getClass().getClassLoader().getResourceAsStream("generatorConfig.xml");
List<String> warnings = new ArrayList<>();
ConfigurationParser parser = new ConfigurationParser(warnings);
Configuration config = parser.parseConfiguration(resourceAsStream);
DefaultShellCallback callback = new DefaultShellCallback(true);
MyBatisGenerator generator = new MyBatisGenerator(config, callback, warnings);
generator.generate(null);
for (String warning : warnings) {
System.err.println(">" + warning);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
看完文章,有任何疑问,请加入群聊一起交流!!!
很赞哦! ()
相关文章
- springmvc+mybatsi-generator生成不了字段注释的解决方案
- IntelliJ IDEA 2024.2发布之后强推新UI,如何恢复老的经典UI界面
- Uninstall hasn't detected folder of intelli] lDEA installation. Probablyuninstall.exe was moved from the installation folder.
- 公众号CPS变现新宠:微赚淘客查券返利机器人,开启智能省钱赚钱新时代
- 高返利优惠券公众号推荐
- 返利公众号可信吗安全吗?返利机器人哪个佣金高?
- 唯品会购物返利公众号大揭秘:哪些真正好用的返利公众号?
- 饿了么优惠券免费领取:哪些公众号值得推荐?
- 哪些有用可靠的微信公众号能领淘宝优惠券?
- 微信返利最高的微信号推荐——让你的购物更加实惠!
标签云
猜你喜欢
- IntelliJ IDEA 2019.2已经可以利用补丁永久破解激活了
- IntelliJ IDEA 2019.3利用补丁永久破解激活教程
- IntelliJ IDEA高版本最灵活的永久破解激活方法(含插件激活,时长你说了算)
- Jetbrains全家桶基于ja-netfilter的最新破解激活详细图文教程
- IntelliJ IDEA 2022.1永久破解激活教程(亲测可用,持续更新)
- 分享几个正版 IntelliJ IDEA 激活码(破解码、注册码),亲测可用,持续更新
- ja-netfilter到底需不需要mymap,2021.3.2版本激活失效?
- 如何激活idea2022.1及以上版本中的插件(亲测可用)
- 【史上最全】IntelliJ IDEA最新2022.1版本安装和激活视频教学(含插件)
- IntelliJ IDEA 2022.2 版本最新2099年永久激活方法,亲测可用,也可以开启新UI了。
站点信息
- 网站程序:spring + freemarker
- 主题模板:《今夕何夕》
- 文章统计:篇文章
- 标签管理:标签云
- 微信公众号:扫描二维码,关注我们