我在 eclipse JAVA EE 中构建动态 web 项目,我制作了一个 servlet 并编写了以下代码:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
try {
String comment = request.getParameter("comment") ;
ANTLRInputStream input = new ANTLRInputStream(request.getParameter("comment"));
} catch(Exception exception) {
exception.printStackTrace();
}
}
当我在服务器“apache-tomac-7”上运行项目时,它从文本区域获取输入然后抛出异常:
**java.lang.NoClassDefFoundError: org/antlr/v4/runtime/ANTLRInputStream
MyServlet.doPost(MyServlet.java:41)
javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)**
那么我该如何解决这个问题呢?
最佳答案
通常发生 NoClassDefFoundErrors 是因为您使用某些库编译项目,这些库在运行时找不到(或者因为 tomcat 使用了不同版本的库)。 您可能需要检查您的类路径并确保 antlr 已列在您的运行时库中或复制到您的 tomcat 库中。
这个网站也有类似的问题,你不妨看看: How to solve java.lang.NoClassDefFoundError?
关于java - 如何在 jsp 中从 textarea 无错误地输入 ANTLR?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38837144/