Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Eclipse STS休眠错误:";正在获取数据库的子项;。org.slf4j.spi.LocationAwareLogger.log_Eclipse_Hibernate_Maven_Logging_Slf4j - Fatal编程技术网

Eclipse STS休眠错误:";正在获取数据库的子项;。org.slf4j.spi.LocationAwareLogger.log

Eclipse STS休眠错误:";正在获取数据库的子项;。org.slf4j.spi.LocationAwareLogger.log,eclipse,hibernate,maven,logging,slf4j,Eclipse,Hibernate,Maven,Logging,Slf4j,我已经研究并尝试了各种解决SLF4J相关问题的方法,但都没有效果。我所要做的就是在STS中使用Hibernate插件。我只需单击Hibernate透视图,然后单击项目上的向下箭头和数据库上的向下箭头,就会发生此异常 我在Hibernate控制台的属性中看到,有一个Eclipse日志文件dir指向logback。我必须在我的pom中的某个地方设置logback吗 我使用了我在网上找到的eclipse教程中的设置。唯一的区别是我使用的是特定的STS版本和Spring和Hibernate的最新版本。我

我已经研究并尝试了各种解决SLF4J相关问题的方法,但都没有效果。我所要做的就是在STS中使用Hibernate插件。我只需单击Hibernate透视图,然后单击项目上的向下箭头和数据库上的向下箭头,就会发生此异常

我在Hibernate控制台的属性中看到,有一个Eclipse日志文件dir指向logback。我必须在我的pom中的某个地方设置logback吗

我使用了我在网上找到的eclipse教程中的设置。唯一的区别是我使用的是特定的STS版本和Spring和Hibernate的最新版本。我已经设置了HibernateConifig和控制台配置

如果您能帮助这个Hibernate插件正确地使用Maven进行日志记录,我们将不胜感激。提前谢谢

以下是我的设置:

STSV3.2,MySQL数据库,vFabric服务器(与STS一起提供),使用Maven

POM版本:

    <java-version>1.6</java-version>
    <spring.version>3.2.2.RELEASE</spring.version>
    <spring.security.version>3.1.3.RELEASE</spring.security.version>
    <org.aspectj-version>1.6.10</org.aspectj-version>
    <org.slf4j-version>1.7.2</org.slf4j-version>
    <org.apache.tiles>2.2.2</org.apache.tiles>      
    <mysql>5.1.24</mysql>               
    <hibernate.version>4.1.5.Final</hibernate.version>
    <junit.version>4.11</junit.version>


谢谢!实际上,当我让Hibernate reveng工具完成它的工作时,我只是在几分钟内评论了一下日志记录。根据forum.hibernate.org/viewtopic.php?p=2441023的帖子,我随后读了一遍,一切都很好D–

具有6个参数的
LocationAwareLogger.log()
方法上的
NoSuchMethodError
表明类路径上的slf4j绑定版本早于1.6。“mvn dependency:tree”应该指出同样多的内容,即您有一个较旧的绑定,比如
slf4j-log4j-1.5.jar

谢谢!实际上,当我让Hibernate reveng工具完成它的工作时,我只是在几分钟内评论了一下日志记录。根据这篇文章,我随后阅读了它们,一切都很好D
    <!-- Spring -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${spring.version}</version>
        <exclusions>
            <!-- Exclude Commons Logging in favor of SLF4j -->
            <exclusion>
                <groupId>commons-logging</groupId>
                <artifactId>commons-logging</artifactId>
             </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${spring.version}</version>
    </dependency>

    <!-- Hibernate -->
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>${hibernate.version}</version>
    </dependency>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-entitymanager</artifactId>
        <version>${hibernate.version}</version>
    </dependency>               
   <!-- Saw this fix online and was trying - doesn't work, temp commented out
   <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-validator</artifactId>           
        <version>4.3.1.Final</version>
        <exclusions>
            Exclude SLF4j to avoid version conflicts (we have 1.6.2, this drags in 1.6.1)
            <exclusion>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-api</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.hibernate.common</groupId>
        <artifactId>hibernate-commons-annotations</artifactId>
        <version>4.0.1.Final</version>
        <classifier>tests</classifier>
    </dependency>
    <dependency>
        <groupId>org.hibernate.javax.persistence</groupId>
        <artifactId>hibernate-jpa-2.0-api</artifactId>
        <version>1.0.1.Final</version>
    </dependency> 
    END Saw this fix online and was trying - doesn't work, temp commented out -->

    <dependency>
        <groupId>javax.validation</groupId>
        <artifactId>validation-api</artifactId>
        <version>1.0.0.GA</version>
        <scope>provided</scope>
    </dependency>     


<!-- Logging -->        
    <dependency>
        <groupId>org.jboss.logging</groupId>
        <artifactId>jboss-logging</artifactId>
        <version>3.1.0.CR2</version>
    </dependency>       
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${org.slf4j-version}</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
        <version>${org.slf4j-version}</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>${org.slf4j-version}</version>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.16</version>
    </dependency>
java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;[Ljava/lang/Object;Ljava/lang/Throwable;)V
    at org.apache.commons.logging.impl.SLF4JLocationAwareLog.debug(SLF4JLocationAwareLog.java:133)
    at org.hibernate.cfg.reveng.dialect.JDBCMetaDataDialect.getTables(JDBCMetaDataDialect.java:26)
    at org.hibernate.cfg.reveng.JDBCReader.processTables(JDBCReader.java:476)
    at org.hibernate.cfg.reveng.JDBCReader.readDatabaseSchema(JDBCReader.java:74)
    at org.hibernate.eclipse.console.workbench.LazyDatabaseSchemaWorkbenchAdapter$2.execute(LazyDatabaseSchemaWorkbenchAdapter.java:126)
    at org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:63)
    at org.hibernate.console.ConsoleConfiguration.execute(ConsoleConfiguration.java:107)
    at org.hibernate.eclipse.console.workbench.LazyDatabaseSchemaWorkbenchAdapter.readDatabaseSchema(LazyDatabaseSchemaWorkbenchAdapter.java:115)
    at org.hibernate.eclipse.console.workbench.LazyDatabaseSchemaWorkbenchAdapter.getChildren(LazyDatabaseSchemaWorkbenchAdapter.java:65)
    at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.fetchDeferredChildren(BasicWorkbenchAdapter.java:106)
    at org.eclipse.ui.progress.DeferredTreeContentManager$1.run(DeferredTreeContentManager.java:235)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)