一、发现问题% }5 h( O9 U$ I" v
$ D! q7 X: b* r3 k
运行引用了jstl的jsp页面 g% K* | c0 z$ k. O
报http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar错 4 K9 a2 X& @5 o$ h7 X/ S/ V 7 m. B* N) H% p) d. X0 r& q$ K6 g3 P5 t+ Y, _# g
: r, @: X* j6 F4 l; o( k二、原因分析- H% e4 t% P9 T. o( w+ d
可能一:版本问题. R. t: o; {; j. h8 W f" G
JSTL1.0 的声明是:<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core " %>$ U4 J: C: i' {, e5 l$ Q0 a4 u
JSTL1.1 的声明是:<%@ taglib prefix="c" uri=http://java.sun.com/jsp/jstl/core %>7 ] S9 K6 L1 w* C) |$ T1 Y
1 ~2 Y3 W5 E* b; H* m
6 s% l% F/ z+ s# U) |+ o& O可能二:没有standard.jar& G; C4 t# D) _ I6 @" }' g
javaee5自带的已经是jstl1.2版本了,页面中也全部是用<%@ taglib prefix="c" uri=http://java.sun.com/jsp/jstl/core %>这种方式。 * x6 u F( j, ^8 [/ n& d. K0 R3 z但javaee5之后就自带只有jstl.jar这一个,没有standard.jar,tld文件也打包到jar里去了,不存在web.xml文件里配置jsp-config的办法。( S3 g- s) |8 `3 E" U
试着添加standard.jar试试。 3 F* v7 l! |) w! U, N4 n9 D 5 z. f5 \; q/ i5 A- o; j8 d ) [# |' H, Y' Z) m2 r1 X
可能三:tomcat发布的应用WEB-INF/lib下没有jstl.jar * I. M) U, Q3 N& w+ F$ @jstl.jar包在ide项目中有,但在tomcat发布的应用WEB-INF/lib下没有,这是工具发布项目的问题,复制一个jar包过去问题就解决了。 8 `: f& W% z8 Q: [6 B+ \% q/ k, N