2014-12-08 106 views
0

我想在一個小型的香草ubuntu 12機器上運行cassandra單元測試,但測試或repl崩潰立即沒有給我任何信息。當我嘗試在REPL我得到如下:cassandraunit立即崩潰

scala> org.cassandraunit.utils.EmbeddedCassandraServerHelper.startEmbeddedCassandra() 
SLF4J: Class path contains multiple SLF4J bindings. 
SLF4J: Found binding in [jar:file:/root/.ivy2/cache/ch.qos.logback/logback-classic/jars/logback-classic-1.1.2.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: Found binding in [jar:file:/root/.ivy2/cache/org.slf4j/slf4j-log4j12/jars/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. 
16:35:47,837 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy] 
16:35:47,837 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml] 
16:35:47,837 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/root/.ivy2/cache/com.typesafe.play/play_2.10/jars/play_2.10-2.3.6.jar!/logback.xml] 
16:35:47,838 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs multiple times on the classpath. 
16:35:47,838 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [jar:file:/root/.ivy2/cache/com.typesafe.play/play_2.10/jars/play_2.10-2.3.6.jar!/logback.xml] 
16:35:47,838 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [jar:file:/root/.ivy2/cache/com.websudos/phantom-test_2.10/jars/phantom-test_2.10-1.4.0.jar!/logback.xml] 
16:35:47,854 |-INFO in [email protected] - URL [jar:file:/root/.ivy2/cache/com.typesafe.play/play_2.10/jars/play_2.10-2.3.6.jar!/logback.xml] is not of type file 
16:35:47,974 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set 
16:35:47,981 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender] 
16:35:47,989 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT] 
16:35:48,015 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property 
16:35:48,247 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to ERROR 
16:35:48,247 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[ROOT] 
16:35:48,247 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration. 
16:35:48,248 |-INFO in [email protected] - Registering current configuration as safe fallback point 

SLF4J: Actual binding is of type [ch.qos.logback.classic.util.ContextSelectorStaticBinder] 
[email protected]:~/test$ 

回答

2

原來我需要> 4GB內存的單元測試。從env JAVA_OPTS="-Xmx5G" sbt test開始解決它。

1

從第一眼的問題似乎是multple SLF4J綁定。你有多個帶有slf4j記錄器的罐子。

SLF4J: Class path contains multiple SLF4J bindings. 
SLF4J: Found binding in [jar:file:/root/.ivy2/cache/ch.qos.logback/logback-classic/jars/logback-classic-1.1.2.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: Found binding in [jar:file:/root/.ivy2/cache/org.slf4j/slf4j-log4j12/jars/slf4j-log4j12- 1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class] 

刪除其中任何一個,然後重試。

您可以參考:http://www.slf4j.org/codes.html#multiple_bindings一個解釋