您当前的位置: 首页 >  ide

衣舞晨风

暂无认证

  • 2浏览

    0关注

    1156博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

奇葩问题001:Idea无法正常编译(代码没有问题)【原因已找到】

衣舞晨风 发布时间:2016-12-13 21:26:46 ,浏览量:2

最近遇到了一个奇葩的问题,在项目开发中,一些同事的idea突然就编译不过去了,点击【RUN】会报出下面的错误:

org.springframework.beans.factory.support.DefaultListableBeanFactory
-->Bean creation exception on FactoryBean type check: org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'sysTestMapper' defined in URL 
[jar:file:/E:/NewERP1/jiankunking/jiankunking-web/target/jiankunking-web-1.0-SNAPSHOT/WEB-INFb/jiankunking-system-1.0-SNAPSHOT.jar!/org/jiankunking/system/member/sysTestMapper.class]: 
Initialization of bean failed; nested exception is java.lang.StackOverflowError 

点击【debug】运行会提示下面的错误:

org.springframework.beans.factory.support.DefaultListableBeanFactory
-->Bean creation exception on FactoryBean type check: org.springframework.beans.factory.UnsatisfiedDependencyException: 
Error creating bean with name 'sysTestMapper' defined in URL 
[jar:file:/E:/NewERP1/jiankunking/jiankunking-web/target/jiankunking-web-1.0-SNAPSHOT/WEB-INFb/jiankunking-system-1.0-SNAPSHOT.jar!/org/jiankunking/system/member/sysTestMapper.class]: 
Unsatisfied dependency expressed through bean property 'sqlSessionFactory': :
Error creating bean with name 'sqlSessionFactory' defined in URL 
[jar:file:/E:/NewERP1/jiankunking/jiankunking-web/target/jiankunking-web-1.0-SNAPSHOT/WEB-INFb/jiankunking-web-1.0-SNAPSHOT.jar!/spring/spring-mybatis.xml]: 
Invocation of init method failed; 
nested exception is java.lang.NoClassDefFoundError:
Could not initialize class org.apache.xpath.compiler.FunctionTable; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in URL 
[jar:file:/E:/NewERP1/jiankunking/jiankunking-web/target/jiankunking-web-1.0-SNAPSHOT/WEB-INFb/jiankunking-web-1.0-SNAPSHOT.jar!/spring/spring-mybatis.xml]:
Invocation of init method failed; 
nested exception is java.lang.NoClassDefFoundError: 
Could not initialize class org.apache.xpath.compiler.FunctionTable 

找过各种各种方式来处理这个问题,最后发现在debug模式下,在: org.springframework.beans.factory.support.DefaultListableBeanFactory spring的DefaultListableBeanFactory类中每个throw 异常的地方打上断点,在debug模式下就可以跑起来了。 无语中。。。。竟然可以这样解决问题。

过了一段时间,这种方式也不行了,又是会重启idea问题就消失了。

但问题还是不时的出现,代码都是一样的,而且代码打包后,在tomcat里面是可以正常运行的,而问题只有几个同事的开发环境中会出现,所以,应该是环境问题,卸载Tomcat、JDK,重装之后问题消失。

—————————————————————————问题再次出现,原因查找—————————————————————————

今天同事又遇到这个问题了,在cmd窗口下:

java -version

看到的jdk版本是1.8

javac -version

看到的版本是1.7

需要注意编译jdk版本和运行时的jdk版本,运行时jdk版本不能小于编译时候的jdk版本。

在idea中用的版本是jdk1.7.0_69 这里写图片描述 从360中可以看到同事的环境中安装了很多jdk 这里写图片描述

我从360中卸载JDK 8还有JDK 1.7.0_69,然后重新设置一下系统环境中的环境变量,在idea中重新选一下jdk即可

—————————————————————————问题解决—————————————————————————

作者:jiankunking 出处:http://blog.csdn.net/jiankunking

关注
打赏
1647422595
查看更多评论
立即登录/注册

微信扫码登录

0.3117s