解决IDEA中JSTL标签库无效

问题说明:
jsp页面EL表达式正常输出,编译时JSTL标签可以正常提示,运行时标签不起作用
问题描述:
jsp页面键入<c有提示(编译时可正常提示JSTL标签),
但是在jsp页面body中写如下代码时${2+2}</br><c:if test="${2>1}">${1+1}</c:if>,
部署起来之后,页面可以显示4 但是死活不显示2(运行时JSTL标签无效
也就是EL表达式好使,JSTL标签库不好使
解决IDEA中JSTL标签库无效

前提,maven工程
如果使用IDEA在jsp页面中使用JSTL标签库,
仅仅将标签库的约束文档加入到setting设置中(不引入任何jstl相关jar包),
在jsp页面使用jstl标签会报如下异常解决IDEA中JSTL标签库无效
解决IDEA中JSTL标签库无效

解决IDEA中JSTL标签库无效
解决IDEA中JSTL标签库无效
然后我们加入jstl的maven依赖
<!-- jstl标签库相关 -->
<dependency>
    <groupId>jstl</groupId>
    <artifactId>jstl</artifactId>
    <version>1.2</version>
</dependency>
然后就好使了。。。
解决IDEA中JSTL标签库无效解决IDEA中JSTL标签库无效
TMD具体怎么好使的我也不知道,我只知道为了研究这个破B玩意花了我两晚上的时间
如果你现在的JSTL标签库还不好使,继续往下看,
我们前面说的页面上引用的那两个标签库,c和fmt的标签库就是从这个网站上下载下来的jar包解压出来的
下这个压缩包
解决IDEA中JSTL标签库无效
解决IDEA中JSTL标签库无效
约束文档都在解压后的tld文件目录下
解决IDEA中JSTL标签库无效
解决IDEA中JSTL标签库无效
解决IDEA中JSTL标签库无效
然后你可以选择在Project Structure -> Module -> <项目名> -> Dependencies中加入解压目录下的lib文件夹下的两个jar包
解决IDEA中JSTL标签库无效
解决IDEA中JSTL标签库无效
然后打上对勾,然后,Apply 然后OK 记得点OK
解决IDEA中JSTL标签库无效
解决IDEA中JSTL标签库无效
然后再次进入Project Structure
解决IDEA中JSTL标签库无效
解决IDEA中JSTL标签库无效
这时候你会发现WEB-INF的lib目录下多了刚才添加进去的两个jar(jstl.jar&standard.jar)
解决IDEA中JSTL标签库无效
然后Apply OK
重新编译项目,ctrl+f9 build project也行,mvn compile也行
说实话我真不明白ctrl_f9 build project解决IDEA中JSTL标签库无效解决IDEA中JSTL标签库无效mvn compile解决IDEA中JSTL标签库无效解决IDEA中JSTL标签库无效两种编译方式有何的区别
所以我的做法是,都来一遍....
有懂的人能给详细解释一下吗。

由于之前加过jstl的maven依赖,我们又手动的添加了jstl的jar包
所以此时Tomcat启动WEB的时候会有如下提示
解决IDEA中JSTL标签库无效
解决IDEA中JSTL标签库无效
不用管,看看你的jsp页面上的jstl标签库好用了不~
不好用的话继续往下看

在maven的pom文件里再把这俩依赖加进去试试
这是网上给的一种解决方案,原文出处http://blog.csdn.net/aimbetter/article/details/45450353
<dependency>
    <groupId>org.apache.taglibs</groupId>
    <artifactId>taglibs-standard-spec</artifactId>
    <version>1.2.5</version>
</dependency>
<dependency>
    <groupId>org.apache.taglibs</groupId>
    <artifactId>taglibs-standard-impl</artifactId>
    <version>1.2.5</version>
</dependency>

附加:jsp页面中的EL表达式不能正常使用
jsp页面加入如下指令
<%@page isELIgnored="false" %>
鼠标点下EL表达式的$符号出现小灯泡后点小灯泡,
然后选择Inject Language or reference 
在列表里面选择 EL(Experssion Language In JSP)
解决IDEA中JSTL标签库无效

解决IDEA中JSTL标签库无效


如果还没能解决,试着重启吧~