之前工作的项目都是一个maven,而现在工作的项目是多个maven集合的项目,因为是第一次接触,总是会出现各式各样的问题,下面来总结一下这三个月碰到的问题:
1,跨maven依赖问题,这个问题主要存在于不同maven之间的文件调用问题。而公司项目主要是将控制层、服务层以及核心层和vo都分开存放。
一般情况下同层调用或者高层调用底层都不会出现什么问题,而底层调用高层再选择fix的时候,就可能导致整个项目的依赖循环出现bug。
这个bug我遇见了一次,并再现了好几次……主要是在我只做定时任务的时候出现的。
具体的解决办法就是将maven的依赖包彻底移除,同时重新导入maven依赖并进行编译
2,启动tomcat而爆发的各种类查找失败问题,这个问题目前还没有找到再现的途径,但是它常常伴随这么一段代码出现:
org.apache.catalina.LifecycleException: A child container failed during start
大致就是启动失败……而问题的出现方式也是多种多样,目前我碰到过三种。
第一种是根本没有任何关联的类查找失败,启动tomcat跟fileupload完全没有任何关系,而这个问题去让能让你知道因为fileupload找不到而无法启动tomcat。
解决方法……我也不知道,我只是不停地去删掉tomcat,然后重新部署,接着将项目重新编译,问题就自然而然的排除了
第二种就是监听器全都找不到了……
因为现在工作的项目并没有任何监听器,然后我就一脸懵逼,最后,通过将maven依赖发布到tomcat当中解决了这个问题,具体操作如下:
你需要设置一下eclipse:
鼠标右击Java项目 —> 属性 -> Deployment Assembly -> Add -> Java Build Path Entries -> 选择Maven Dependencies -> Finish -> OK
把对应的Maven依赖包也发布到tomcat,调试时会自动把那些jar发布到指定目录下,tomcat下也能找到那些jar了。
这个方法是在cdsn里面找到的,具体链接地址如下:
第三种跟上面的类似,丢失的同样都不是自己编写的类跟代码,需要的做也就是将maven发布一下就可以解决这个问题了。
目前是在工作中遇到的难点。