今天在调试程序中发现突然提示一条红色的信息Source not found.
一般情况下,出现这个问题有以下几种原因:
1、对应的java文件真的不存在(这种情况一般很少,基本都不会犯这种错误吧)
2、调试的是第三方jar包,这个就要导入第三方jar包的源码了
3、eclipse编译的class文件和tomcat启动查找class文件的路径不一致。或者说tomcat找不到编译后的class文件。
tomcat有2中部署web项目的方式,一是配置war包,一是热部署,配置指向项目web-inf的上一级目录
1)针对war包部署,解压war包,看看class文件是否在相应目录
2)对于第二种,要看看在web-inf/classes文件家中是否有对应的class文件
所以在eclipse中设置项目的编译路径的时候,就需要注意了。路径设置在:右键项目-->Build path-->Config Build Path,在java build path中看source页签下你的source
folder(一般情况下都是src文件夹,你也可以创建多个source folder) 的output路径是否是...WEB-INF/classes
4、在eclipse里面通过new server wizard 创建server,然后eclipse里面调试启动,调试的时候提示source not found(当然文件肯定是存在的,而且编译路径也没错,通过外部
tomcat启动时,调试能够正常进行,甚至通过工具栏中的tomcat-->start tomcat 启动,调试也能正常)。最后在网上找到了解决方案,但是原因不明:
Debug 视图下 -》在调试的线程上 右键单击 -》选择Edit Source Lookup Path -》选择Add -》选择Java Project 选择相应的Project 进行OK确定即可