环境:jdk1.7、sqlserver数据库、 框架:springboot + mybatis+freemark 、工具:eclipse、maven、svn
最近在做一个项目接近尾声,帮同事进行发布测试时,小编利用maven将项目打成jar包(springboot项目提倡的)然后再命令框中执行时,总是内置tomcat启动问题(根据经验,这种情况多半是项目中有使用 servlet 的api,与tomcat自带的servlet发生冲突),可是在pom.xml中并没有加入servlet的依赖。一时感觉找不到问题的所在,最后小编又通过maven的依赖树仔细检查了项目所直接依赖和间接依赖的jar包,发现项目依赖了hadood的jar,而hadoop 又依赖了servlet的api,于是通过<exclusion>标签对依赖进行了排除,重新打jar包果然能够正常启动。
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>1.0.0</version>
<exclusions>
<exclusion>
<artifactId>servlet-api</artifactId>
<groupId>org.mortbay.jetty</groupId>
</exclusion>
<exclusion>
<artifactId>servlet-api-2.5</artifactId>
<groupId>org.mortbay.jetty</groupId>
</exclusion>
</exclusions>
</dependency>
希望对你有帮助,谢谢!