一尘不染

Eclipse + Tomcat-部署时出现ClassNotFound异常

tomcat

我正面临着日食的怪异问题。

我有一个使用CXF,hibernate和spring的多模块Maven项目。如果我将Maven软件包打包后产生的战争,并手动将其部署在tomcat
7上-一切正常。但是,如果我尝试使用Eclipse(服务器-> tomcat),则会出现以下错误:

    SEVERE: Exception starting filter datasourceFilter
java.lang.ClassNotFoundException: com.X.X.X.X.filter.DataSourceFilter
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:532)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:514)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:133)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:256)
    at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4650)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5306)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)

值得一提的是,我要与eclipse集成的tomcat是相同的独立tomcat,我手动进行了战争。我用Eclipse Juno ..如果有关系..

在我的web.xml上:

<filter>
        <filter-name>datasourceFilter</filter-name>
        <filter-class>com.X.X.X.X.filter.DataSourceFilter</filter-class>
    </filter>
        <filter-mapping>
        <filter-name>datasourceFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

谁能帮我?

伊多布


阅读 318

收藏
2020-06-16

共1个答案

一尘不染

如果您同时安装了Maven Eclipse插件Maven
WTP插件,则
这是自动的。如果你没有这些安装有别,继续前进,安装它们,然后当Eclipse重新启动右键单击该项目,做
的Maven >更新项目......。这将在内部更改项目配置,因此Maven依赖项将复制到/WEB-INF/lib部署目标上的文件夹中。

如果您不想使用这些插件中的任何一个,则必须转到 项目属性 > Deployment
Assembly
配置并手动添加依赖项,但是同样,这些插件会自动完成此操作。

2020-06-16