2013-07-12 24 views
0

我有一個簡單的maven-webapp項目。執行mvn tomcat:run後,當我眉頭項目我得到以下異常:mvn tomcat:運行解析jstl taglibs依賴關係

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 
    org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:51) 
    org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409) 
    org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:116) 
    org.apache.jasper.compiler.TagLibraryInfoImpl.generateTLDLocation(TagLibraryInfoImpl.java:315) 
    org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:148) 
    org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:386) 
    org.apache.jasper.compiler.Parser.parseDirective(Parser.java:449) 
    org.apache.jasper.compiler.Parser.parseElements(Parser.java:1396) 
    org.apache.jasper.compiler.Parser.parse(Parser.java:130) 
    org.apache.jasper.compiler.ParserController.doParse(ParserController.java:255) 
    org.apache.jasper.compiler.ParserController.parse(ParserController.java:103) 
    org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:185) 
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:347) 
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:327) 
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:314) 
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 

,但它工作正常,如果我手動複製.war文件到tomcat webapps目錄。

這是我在我的pom.xml

<dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>javax.servlet-api</artifactId> 
     <version>3.0.1</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>jstl</groupId> 
     <artifactId>jstl</artifactId> 
     <version>1.2</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>javax.servlet.jsp</groupId> 
     <artifactId>jsp-api</artifactId> 
     <version>2.1</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.tomcat</groupId> 
     <artifactId>el-api</artifactId> 
     <version>6.0.26</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.tomcat</groupId> 
     <artifactId>jasper-el</artifactId> 
     <version>6.0.26</version> 
     <scope>provided</scope> 
    </dependency> 

任何想法?

回答

1

問題解決了,<scope>provided</scope>應該從jstl

<dependency> 
     <groupId>jstl</groupId> 
     <artifactId>jstl</artifactId> 
     <version>1.2</version>   
    </dependency> 
被刪除