java - 无法部署eclipse导出的war文件

标签 java eclipse maven tomcat

我有一个在 Eclipse 中的 Tomcat 中成功运行的应用程序,但是当我尝试将它部署到外部 tomcat 时,它抛出以下异常

org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: -1 in the jsp file: null
Generating servlet error:
[antlib:org.apache.tools.ant] Could not load definitions from resource org/apache/tools/ant/antlib.xml. It could not be found.

似乎这在运行时需要一些 Tomcat 无法提供的 tools.jar。

注意:我已经从 Eclipse 导出了相同的 war 并尝试使用 Maven 构建它

我不知道 Eclipse 是如何管理它的。当部署在外部 Tomcat 上时,如何使其工作?

最佳答案

您有 servlet-api.jar 错误。

你能做什么?

  • 删除 servlet/WEB-INF/目录中的 servlet-api.jar。
  • 确保 %Tomcat home%/lib 已经有 servlet-api.jar。
  • 如果您没有下载并添加到库中 Jar
  • 如果您正在使用 maven 控制您的依赖;
  • 如果您没有将此依赖项添加到您的 pom.xml;

    <dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jsp-api</artifactId>
    <version>2.0</version>
    <scope>provided</scope>
    

关于java - 无法部署eclipse导出的war文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33605718/

相关文章:

java - SIP 和 Java,从哪里开始?用什么开始?

java - 如何_使用_ javadoc

java - 如何自动调用号码键盘?

java - 使用 Eclipse 的 Android 应用程序

java - 如何在同时支持 jigsaw 和 jre 8 的情况下使用 maven?

java - 使用引号和引号内的逗号以及引号内的转义引号分割逗号分隔的字符串

java - 如何在命令行中设置JVM字符集?

Java ImageIO 异常

java - 即使在其他平台上运行,也使用 Maven 程序集插件设置 Linux 文件权限?

eclipse - spring-web maven 依赖项未随 eclipse 发布