使用<;时出现Maven依赖项错误;资源>;

使用<;时出现Maven依赖项错误;资源>;,maven,m2eclipse,Maven,M2eclipse,我的项目依赖于hibernate核心。当我从Eclipse将项目部署到JBOSS时,一切正常 当我在我的pom中添加一个资源条目以过滤persistence.xml文件时,我开始在部署过程中得到一个java.lang.NoClassDefFoundError:org/hibernate/Session异常 <resources> <resource> <directory>src/main/resources/M

我的项目依赖于hibernate核心。当我从Eclipse将项目部署到JBOSS时,一切正常

当我在我的pom中添加一个资源条目以过滤persistence.xml文件时,我开始在部署过程中得到一个
java.lang.NoClassDefFoundError:org/hibernate/Session
异常

    <resources>
        <resource>
            <directory>src/main/resources/META-INF</directory>
            <filtering>true</filtering>
            <includes>
                <include>**/*.xml</include>
            </includes>
        </resource>
    </resources>

src/main/resources/META-INF
真的
**/*.xml

一旦我删除了这个标记,部署就会正常运行

我怀疑当您删除这个xml时,它会删除一些在运行时要求这个类加载的xml文件

简单地加上

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>4.3.5.Final</version>
</dependency>

org.hibernate
冬眠核心
4.3.5.最终版本

将版本作为应用程序的兼容性

我已经在pom中声明了此依赖项,如我问题的第一句所述:)。此外,我并没有删除xml文件,而是对其进行过滤,以便在其中“注入”maven属性。它不会添加到该jar或其对类路径的依赖关系。问题是,当我从pom中删除该位时,部署工作正常,因此仅此依赖关系没有问题。我假设在运行时您会看到此错误,这显然意味着它既找不到那个类,也找不到它依赖的那个类,这一点我也很清楚。不清楚的是,为什么只有在使用标记时才会发生此错误