奇葩问题001:Idea无法正常编译(代码没有问题)【原因已找到】
2016-12-13 21:26
537 查看
最近遇到了一个奇葩的问题,在项目开发中,一些同事的idea突然就编译不过去了,点击【RUN】会报出下面的错误:
点击【debug】运行会提示下面的错误:
找过各种各种方式来处理这个问题,最后发现在debug模式下,在:
org.springframework.beans.factory.support.DefaultListableBeanFactory
spring的DefaultListableBeanFactory类中每个throw 异常的地方打上断点,在debug模式下就可以跑起来了。
无语中。。。。竟然可以这样解决问题。
过了一段时间,这种方式也不行了,又是会重启idea问题就消失了。
但问题还是不时的出现,代码都是一样的,而且代码打包后,在tomcat里面是可以正常运行的,而问题只有几个同事的开发环境中会出现,所以,应该是环境问题,卸载Tomcat、JDK,重装之后问题消失。
—————————————————————————问题再次出现,原因查找—————————————————————————
今天同事又遇到这个问题了,在cmd窗口下:
看到的jdk版本是1.8
看到的版本是1.7
需要注意编译jdk版本和运行时的jdk版本,运行时jdk版本不能小于编译时候的jdk版本。
在idea中用的版本是jdk1.7.0_69
![](https://img-blog.csdn.net/20170101134932881?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvamlhbmt1bmtpbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
从360中可以看到同事的环境中安装了很多jdk
![](https://img-blog.csdn.net/20170101134945256?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvamlhbmt1bmtpbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
我从360中卸载JDK 8还有JDK 1.7.0_69,然后重新设置一下系统环境中的环境变量,在idea中重新选一下jdk即可
—————————————————————————问题解决—————————————————————————
作者:jiankunking 出处:http://blog.csdn.net/jiankunking
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
相关文章推荐
- Android Studio 中的类文件前标识图标显示为 j 而不是C,代码的左边没有了颜色显示,布局文件的引用也没有蓝色显示,代码大部分变成了白色。项目能正常编译运行,且敲代码时也没有了提示的问题
- 析构函数无法命中断点. 当前无法命中断点: 没有与此行关联的调试程序的目标代码类型的可执行代码. 可能的原因包括;条件编译, 编译器优化或者...
- 编译好的QT程序在其他没有安装QT的机器上会出现图标和图片无法正常显示的问题。
- 安卓奇葩问题之:运行OK,打包安装崩溃(原因是:代码不规范导致编译出错)
- IntelliJ IDEA编译环境编写JSP文件报错且没有代码提示,还能正常运行
- qt在windows下编译好的QT程序在其他没有安装QT的机器上会出现图标和图片无法正常显示的问题。
- IDEA运行编译后配置文件无法找到,或配置文件修改后无效的问题
- 解决idea用maven创建java项目代码无法编译的问题
- 黑马程序员 Java编译正常运行时却无法加载主类的问题原因
- IDEA运行编译后配置文件无法找到,或配置文件修改后无效的问题
- mfc对话框程序在ide编译可运行,但编译完毕的debug和release版本不能运行。。后来发现原因是:用到的sqlite数据库文件没在对应目录下,而代码中没有try..catch..
- 【转】C++编译过程中"没有找到MFC80UD.DLL,因此这个程序未能启动.重新安装应用程序可能会修复此问题"? 的彻底解决
- “在使用Samba进行建立Wisamba无法访问,你可能没有权限使用网络”的一种问题原因及解决
- jre build path 中的限制问题导致一些代码无法编译..如果设置
- “在使用Samba进行建立Wisamba无法访问,你可能没有权限使用网络”的一种问题原因及解决
- 代码正确的jsp无法编译,原因在于 tmpFile.renameTo(classFile) failed ?求帮助
- 关于修改web app项目java代码后Eclipse没有重新编译的问题
- 当你在VC++6.0编译上面的代码时会提示一些opencv的函数没有被定义,原因是环境没设置好
- vc2005编译过程中"没有找到MFC80UD.DLL,因此这个程序未能启动.重新安装应用程序可能会修复此问题"? 的彻底解决
- C++编译过程中"没有找到MFC80UD.DLL,因此这个程序未能启动.重新安装应用程序可能会修复此问题"? 的彻底解决