Java程序eclipse可以执行打包成jar后执行出错

来源:互联网 发布:免费的office for mac 编辑:程序博客网 时间:2024/05/20 17:07

Java程序在eclipse中能够正常执行,但是当打成jar包后一直执行出错,提示bean没有定义:

”’
Cannot resolve reference to bean ‘dealMonitorJob’ while setting bean property ‘targetObject’;
nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException:No bean named ‘dealMonitorJob’ is defined
”’
程序是使用注解的,应该不存在没有定义的说法,检查了一下配置文件,也是加载进去了,那么如果说没有定义就是可能没有找到类的路径,也就是说通过eclipse生成的jar包无法正常扫描到JAR包内的类或者配置文件

解决办法就是,在eclipse导出JAR包时,需要勾选 add directory entries 。如下图:
这里写图片描述

这样打出来的jar包,可以解决这个问题,在外围也可以扫描到jar包内用注解声明的bean或者其他类或者文件。如果没有勾上add directory entries,就不行了。

原因可以参考下图
这里写图片描述

可以看到,勾选了add directory entries之后打出的jar包,多了路径的信息。这就是两种的区别。
所以,要记住,以后通过myeclipse导出jar包需要 勾选 add directory entries 。而ant或者maven等工具在打包过程中则会自动添加相关信息至JAR包中。

可以参考:http://blog.csdn.net/linwei_1029/article/details/42148479

原创粉丝点击