gpt4 book ai didi

java - 在 ServeltContextListener 中使用外部定义的类

转载 作者:行者123 更新时间:2023-11-28 22:44:49 25 4
gpt4 key购买 nike

我正在实现 ServletContextListener:

public class Listener implements ServletContextListener {

public void contextInitialized(ServletContextEvent arg0) {

ServletContext context=arg0.getServletContext();

try {
XMLInputSource in = new XMLInputSource("/home/ahmed/Desktop/AE.xml");
} catch (IOException e) {

}
}
}

其中 XMLInputSource 定义在一个外部 jar 中;包含在项目中(在 Eclipse 上)。


但是,尝试使用此外部类 会导致异常:java.lang.NoClassDefFoundError

有什么帮助吗? Tomcat 是否需要以特殊方式注册使用的外部库??

最佳答案

Web 应用程序库必须存储在部署的 Web 应用程序的/WEB-INF/lib 目录中。在 WTP eclipse 项目中,您只需将 jar 放到 WebContent/WEB-INF/lib 文件夹中,该 jar 将自动生成

  • 在项目的构建类路径中
  • 通过 Eclipse 部署在/WEB-INF/lib 下

因此,将其从您的构建路径中删除,并将其放入 WebContent/WEB-INF/lib。

请不要像您在代码片段中那样吞下异常!如果您不能抛出 IOException,至少抛出一个包装原始 IOException 的运行时异常。

关于java - 在 ServeltContextListener 中使用外部定义的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10596699/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com