问题描述 今天试了下Idea这个工具,发现它的编码功能十分强大,在启动Spring Boot项目时,发现报错:
java.lang.NoClassDefFoundError: javax/servlet/ServletContext
at java.lang.Class .getDeclaredMethods0(Native Method )
at java .lang .Class .privateGetDeclaredMethods (Class .java:2531)
at java .lang .Class .getDeclaredMethods (Class .java:1855)
在之前的项目中,已经知道spring boot要使用jsp,必须在pom文件中添加如下配置(在Eclipse中可以正常启动):
<dependency >
<groupId > org.springframework.boot</groupId >
<artifactId > spring-boot-starter-tomcat</artifactId >
<scope > provided</scope >
</dependency >
<dependency >
<groupId > org.apache.tomcat.embed</groupId >
<artifactId > tomcat-embed-jasper</artifactId >
<scope > provided</scope >
</dependency >
解决步骤1 百度了下,说是要注释掉provided这一个scope(idea编译启动后找不到被指定为provided这种jar包),也不知道真假,试了下,确实可以启动了。 但是在通过Controller访问jsp页面时,页面又错了
Whitelabel Error Page
This application has no explicit mapping for /error , so you are seeing this as a fallback.
Thu Feb 23 16 :45 :26 CST 2017
There was an unexpected error (type=Not Found, status=404 ).
/WEB-INF/jsp/0.2 /login.jsp
解决步骤2 这里弄了很长时间,才发现是自己傻X了(也因为对idea不熟悉),在配置启动方式的时候,要指定working directory OK,至此解决,这个工具还要 多玩玩才能装起来。。