我正在尝试将SpringBoot从2.1.x版升级到2.2.x版,但是我的jsp文件中包含的jstl一直存在问题。
org.apache.jasper.JasperException: The absolute uri: [http://java.sun.com/jsp/jstl/core] cannot be resolved in either web.xml or the jar files deployed with this application
我的gradle设置中有这些依赖项
dependencies {
// Spring Boot
implementation 'org.springframework.boot:spring-boot-starter-web'
providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'
implementation 'org.springframework.boot:spring-boot-starter-actuator'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
// Web
implementation 'javax.servlet:jstl:1.2'
implementation 'org.apache.tomcat.embed:tomcat-embed-jasper:9.0.40'
在我的jsp文件中,我有这些包含
<!DOCTYPE html>
<%@ page language="java" pageEncoding="utf-8" contentType="text/html;charset=utf-8" %>
<%@ page trimDirectiveWhitespaces="true" session="false" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring" %>
当我使用SpringBoot2.1.x版本时,它一直在工作,但是当我使用2.2.x版本时,它就出现了上面描述的错误。
当我启动应用程序时,我在intellij设置中使用这个vm选项
-Dtomcat.util.scan.StandardJarScanFilter.jarsToScan=jstl*.jar,spring-webmvc*.jar
我没有web.xml文件,但是我有一个web.config文件,我们在azure中部署时使用它。但在本地测试时,这不应该是相关的。。。
有什么办法解决这个问题吗?为什么springboot2.2.x在发行说明中找不到任何与jsp或jstl相关的突破性更改时会打破这一点呢?
暂无答案!
目前还没有任何答案,快来回答吧!