Apache 使用外部Jar时Eclipse Juno EE NoClassDefFoundError

Apache 使用外部Jar时Eclipse Juno EE NoClassDefFoundError,apache,jakarta-ee,eclipse-juno,apache-tika,Apache,Jakarta Ee,Eclipse Juno,Apache Tika,我通过文件夹->属性->构建路径->库->添加外部jar在eclipse dynamic webproject中添加了一个外部jar 代码在编译时运行良好 package servlet; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.MultipartConfig; import jav

我通过文件夹->属性->构建路径->库->添加外部jar在eclipse dynamic webproject中添加了一个外部jar

代码在编译时运行良好

package servlet;
import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.MultipartConfig;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.tika.Tika;

@WebServlet(name="UploadServlet", urlPatterns={"/uploadFile"})     // specify urlPattern for servlet
@MultipartConfig                       //Specify that this servlet will receive a multipart data
public class UploadServlet extends HttpServlet {

    protected void doPost(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException{
        Tika tika = new Tika();

        res.setContentType("text/html");
        PrintWriter writer = res.getWriter();
        writer.write(mediaType);
    }
}
我添加了ApacheTika,但当我运行应用程序时。发生了这些异常

root cause 

java.lang.NoClassDefFoundError: org/apache/tika/Tika
    servlet.UploadServlet.doPost(UploadServlet.java:19)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:722)


root cause 

java.lang.ClassNotFoundException: org.apache.tika.Tika
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
    servlet.UploadServlet.doPost(UploadServlet.java:19)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

我使用ApacheTika来确定上传了什么文件,我想用它来验证文件是图像还是音频文件,因为您忘了将jar添加到部署程序集页面。当您运行应用程序时,它不会部署到服务器上,因此会出现NoClassDefFoundErrors