Java Intellij Idea Tomcat和Spring MVC模板
我刚刚开始玩SpringMVC。我安装了Intellij Idea和Tomcat服务器,然后从SpringMVC模板创建了一个新项目。当我运行它时,我得到了错误:Java Intellij Idea Tomcat和Spring MVC模板,java,spring,tomcat,intellij-idea,Java,Spring,Tomcat,Intellij Idea,我刚刚开始玩SpringMVC。我安装了Intellij Idea和Tomcat服务器,然后从SpringMVC模板创建了一个新项目。当我运行它时,我得到了错误: Servlet.init() for servlet mvc-dispatcher threw exception 我通过将JavaJDK从1.8版更改为1.7版解决了这个问题。当我运行它时,我得到了以下错误: java.lang.ClassNotFoundException: org.apache.jsp.WEB_002dINF.
Servlet.init() for servlet mvc-dispatcher threw exception
我通过将JavaJDK从1.8版更改为1.7版解决了这个问题。当我运行它时,我得到了以下错误:
java.lang.ClassNotFoundException: org.apache.jsp.WEB_002dINF.pages.hello_jsp
要修复它,我必须删除:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
javax.servlet
servlet api
2.5
从我的pom.xml文件,现在它可以工作了。有人能告诉我为什么这个模板在没有这些更改的情况下不能工作吗?如果没有关于错误的更多详细信息,我无法回答您为什么需要更改Java版本 至于
ServletAPI
依赖关系,这是因为Tomcat包含了自己的ServletAPI
实现。所以发生了冲突。您要做的是将依赖项添加回POM中,其范围为提供的
。这样,您的IDE就可以在构建时使用它了。(当然,除非您从其他地方获得servlet api
,比如javaee api
依赖项)
javax.servlet
servlet api
2.5
假如
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>