我正在尝试使用 Jetty 预编译我的 JSP 文件,因此我不必为我的 Jetty 项目提供编译器。我正在使用 Ant 来实现这一点,但出现错误,我不知道如何解决。
taglibs.jsp(4,62) PWC6188:绝对 uri: http: //java.sun.com/jsp/jstl/core无法在 web.xml 或随此应用程序部署的 jar 文件中解析
我正在使用另一个 StackOverflow 问题中提到的以下 ant 脚本: precompile jsps into classes for Jetty8 using ant
<property name="jetty.home" value="C:/jetty-distribution-8.1.8.v20121106" />
<path id="compile.jspc">
<fileset dir="${jetty.home}">
<include name="lib/servlet-api-*.jar" />
<include name="lib/jsp/*.jar" />
</fileset>
</path>
<target name="jspc" depends="compile">
<taskdef classname="org.apache.jasper.JspC" name="jasper2" classpathref="compile.jspc" />
<jasper2 validateXml="false"
uriroot="WebContent"
addWebXmlMappings="true"
webXmlFragment="WebContent/WEB-INF/generated_web.xml"
compilerSourceVM="1.6"
compilerTargetVM="1.6"
outputDir="build/gen-src"
verbose="9" />
</target>
什么可能出错并触发此错误?仔细检查类路径并加载所有需要的 .jar 文件。与其他论坛帖子中提到的 JSTL 版本无关。
最好的问候,用户2255297
更新: Taglibs.jsp 的内容
<%@ taglib prefix="stripes" uri="http://stripes.sourceforge.net/stripes.tld" %>
<%@ taglib prefix="stripesDynamic" uri="http://stripes.sourceforge.net/stripes-dynattr.tld" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%-- Short hand for the context root. --%>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>