所有playOrm测试都失败了

时间:2012-10-01 17:48:38

标签: playorm

我刚刚下载了最新版本的代码并尝试了#34; ant testCheckin"。

所有测试都失败了。我能做错什么?我在factorySingleton

中尝试了IN_MEMORY和CASSANDRA配置

T E S T S

运行com.alvazan.test.TestColumnSlice SLF4J:类路径包含多个SLF4J绑定。 SLF4J:在[jar:file:/home/mvalle/.m2/repository/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.jar!/ org / slf4j / impl / StaticLoggerBinder中找到绑定。类] SLF4J:在[jar:file:/home/mvalle/.m2/repository/ch/qos/logback/logback-classic/1.0.1/logback-classic-1.0.1.jar!/ org / slf4j / impl中找到绑定/StaticLoggerBinder.class] SLF4J:有关解释,请参阅http://www.slf4j.org/codes.html#multiple_bindings。 log4j:WARN找不到logger(com.alvazan.test.FactorySingleton)的appender。 log4j:WARN请正确初始化log4j系统。 log4j:WARN有关详细信息,请参阅http://logging.apache.org/log4j/1.2/faq.html#noconfig。 测试运行:4,失败:0,错误:4,跳过:0,经过的时间:2.075秒<<<失败! testDecimalColumnSlice(com.alvazan.test.TestColumnSlice)经过的时间:1993秒<<<错误! java.lang.ClassCastException:com.alvazan.orm.impl.meta.data.MetaClassSingle无法强制转换为com.alvazan.orm.impl.meta.data.MetaClassInheritance     at com.alvazan.orm.impl.meta.scan.ScannerForField.processToOne(ScannerForField.java:342)     在com.alvazan.orm.impl.meta.scan.ScannerForField.processManyToOne(ScannerForField.java:202)     在com.alvazan.orm.impl.meta.scan.ScannerForClass.inspectField(ScannerForClass.java:185)     at com.alvazan.orm.impl.meta.scan.ScannerForClass.scanFields(ScannerForClass.java:169)     在com.alvazan.orm.impl.meta.scan.ScannerForClass.scanSingle(ScannerForClass.java:108)     at com.alvazan.orm.impl.meta.scan.ScannerForClass.addClass(ScannerForClass.java:67)     at com.alvazan.orm.layer0.base.MyClassAnnotationDiscoveryListener.scanClass(MyClassAnnotationDiscoveryListener.java:41)     at com.alvazan.orm.layer0.base.MyClassAnnotationDiscoveryListener.discovered(MyClassAnnotationDiscoveryListener.java:34)     在com.impetus.annovention.Discoverer.discoverAndIntimateForClassAnnotations(Discoverer.java:197)     在com.impetus.annovention.Discoverer.discover(Discoverer.java:155)     at com.alvazan.orm.layer0.base.BaseEntityManagerFactoryImpl.rescan(BaseEntityManagerFactoryImpl.java:80)     at com.alvazan.orm.layer0.base.BaseEntityManagerFactoryImpl.setup(BaseEntityManagerFactoryImpl.java:131)     在com.alvazan.orm.impl.bindings.BootstrapImpl.createInstance(BootstrapImpl.java:51)     在com.alvazan.orm.api.base.Bootstrap.create(Bootstrap.java:26)     在com.alvazan.orm.api.base.Bootstrap.create(Bootstrap.java:21)     在com.alvazan.test.FactorySingleton.createFactory(FactorySingleton.java:56)     在com.alvazan.test.FactorySingleton.createFactoryOnce(FactorySingleton.java:37)     在com.alvazan.test.TestColumnSlice.createEntityManager(TestColumnSlice.java:32)     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)     在java.lang.reflect.Method.invoke(Method.java:601)     在org.junit.runners.model.FrameworkMethod $ 1.runReflectiveCall(FrameworkMethod.java:44)     在org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)     在org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)     在org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)     在org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)     在org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)     在org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)     在org.junit.runners.ParentRunner $ 3.run(ParentRunner.java:193)     在org.junit.runners.ParentRunner $ 1.schedule(ParentRunner.java:52)     在org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)     在org.junit.runners.ParentRunner.access $ 000(ParentRunner.java:42)     在org.junit.runners.ParentRunner $ 2.evaluate(ParentRunner.java:184)     在org.junit.runners.ParentRunner.run(ParentRunner.java:236)     在org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)     在org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)     在org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)     在java.lang.reflect.Method.invoke(Method.java:601)     at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)     在org.apache.maven.surefire.booter.ProviderFactory $ ProviderProxy.invoke(ProviderFactory.java:165)     在org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)     在org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)     在org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)

1 个答案:

答案 0 :(得分:1)

好的,我们找到了。此错误现已在PlayOrm中修复。事实证明,扫描以不同的顺序扫描类,并且在以不同的顺序扫描时发现了一个错误。此错误未修复,因此仍可以按任何顺序扫描。

我让其他人检查并运行./build并且他运行良好,sooooo来调试你的问题......

  1. 运行git status并查看您的更改
  2. 我添加了一些“调试”级别日志并启用了调试以便更新到最新版本(这些将帮助我进一步调试以及我需要更多日志在这些区域)
  3. 运行TestKeyTypes.testIntegerType并将问题中的日志剪切并粘贴,以便我可以进一步调试
  4. 我的猜测是你对某种继承实体进行了更改,这种实体没有正确地抛出“你不能那样做”的例外(而且我有很多但可能缺少一些)。

    迪安