一、问题
web项目使用到很多POM文件中的profile的变量,但是直接通过eclipse,run as项目,就不会将这些变量替换,当然也可以手动通过Mvn编译成war然后在本地运行,但是这样的话,就没办法通过eclipse进行调试。
项目的POM文件如下:
然后项目的web.xml等很多文件中使用了这些变量,如下:
二、解决方法
思路很简单,就是怎么在运行的时候,通过mvn编译,然后在通过tomcat部署运行,所以按照这个思路就是怎么使用mvn的tomcat插件。
第一步,在项目的pom文件的build的插件下添加tomcat的插件
第二步、去tomcat的官网查找下mvn的相关命令,网址:http://tomcat.apache.org/maven-plugin-2.0/tomcat7-maven-plugin/plugin-info.html。
我们可以看到有个命令为tomcat7:run-war就是我们说的那种思路。
第三步、通过mvn命令启动该项目,通过点击项目->Debug AS->Maven Build,出现如下的界面:
然后我们就能看到项目正常启动如图:
经过测试确实打的断点可以,这样我们的项目就可以调试了。
三、遇到的问题
在这个启动项目的过程中遇到一个ClassFormatException的问题,问题如下:
解决方法:
加一个metadata-complete="true",后面我将这个删除,好像也没有之前的问题,这个问题还需要深究一下。
四、结论
1.maven很强大,以前只觉得maven就是拉jar包,和管理jar包,兼顾一些ant的功能,现在看看感觉很多灵活性,maven支持的非常好,而且对周边的技术支持也是蛮成熟的,所以maven还需要系统的学习一下,后面我会开启学习maven的博文。
2.遇到问题不能退缩,遇到问题是一件好事,要自己主动去找资料,一般都能解决的。
3.解决问题要培养成模式,提高后期解决问题的能力。
