Tomcat10改用了Jakarta,导致javax开头的包全炸了
经过实测,导入一下两个包即可正常使用 jsp。使用 IDEA 编写时,jsp 文件关于 taglib 的提示也是正常的。
有了这俩,你甚至可以删掉 servlet 的导入
第一个包
implementation("jakarta.servlet.jsp.jstl:jakarta.servlet.jsp.jstl-api:3.0.0")
如果没有的话报错 NoClassDefFoundError: jakarta/servlet/jsp/jstl/core/LoopTag
第二个包
implementation("org.glassfish.web:jakarta.servlet.jsp.jstl:3.0.1")
如果没有这个但是有standard报错:无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core]
否则报这个错:未能加载或实例化TagLibraryValidator类:[org.apache.taglibs.standard.tlv.JstlCoreTLV]