尝试使用以下代码启动titan:
TitanFactory.Builder config = TitanFactory.build();
config.set("storage.backend", "embeddedcassandra");
config.set("storage.directory", DIRECTORY);
graph = config.open();
但是,得到了以下例外。
线程中的异常" main" java.lang.IllegalArgumentException:无法实例化实现: com.thinkaurelius.titan.diskstorage.cassandra.embedded.CassandraEmbeddedStoreManager 在com.thinkaurelius.titan.util.system.ConfigurationUtil.instantiate(ConfigurationUtil.java:55) 在com.thinkaurelius.titan.diskstorage.Backend.getImplementationClass(Backend.java:473) 在com.thinkaurelius.titan.diskstorage.Backend.getStorageManager(Backend.java:407) at com.thinkaurelius.titan.graphdb.configuration.GraphDatabaseConfiguration。(GraphDatabaseConfiguration.java:1320) 在com.thinkaurelius.titan.core.TitanFactory.open(TitanFactory.java:94) 在com.thinkaurelius.titan.core.TitanFactory.open(TitanFactory.java:84) 在com.thinkaurelius.titan.core.TitanFactory $ Builder.open(TitanFactory.java:139) at main.java.com.bag.server.database.TitanDatabaseAccess.start(TitanDatabaseAccess.java:55) 在main.java.com.bag.server.TestServer。(TestServer.java:105) 在main.java.com.bag.server.TestServer.main(TestServer.java:429) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) 在com.intellij.rt.execution.application.AppMain.main(AppMain.java:147) 引起:java.lang.reflect.InvocationTargetException at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) 在com.thinkaurelius.titan.util.system.ConfigurationUtil.instantiate(ConfigurationUtil.java:44) ......还有14个 引起:java.lang.NoSuchMethodError:org.slf4j.helpers.MessageFormatter.format(Ljava / lang / String; Ljava / lang / Object;)Ljava / lang / String; at org.slf4j.impl.JDK14LoggerAdapter.info(JDK14LoggerAdapter.java:303) 在com.thinkaurelius.titan.diskstorage.cassandra.utils.CassandraDaemonWrapper.start(CassandraDaemonWrapper.java:69) 在com.thinkaurelius.titan.diskstorage.cassandra.embedded.CassandraEmbeddedStoreManager。(CassandraEmbeddedStoreManager.java:81) ......还有19个
尝试在Intellij的Linux上运行它 - java。
答案 0 :(得分:0)
这可能是因为您尚未启动Embedded Cassandra。我认为泰坦不会自动为你做这件事。您可以使用以下命令启动嵌入式Cassandra:
EmbeddedCassandraServerHelper.startEmbeddedCassandra();
例如,。或者
EmbeddedCassandraServerHelper.startEmbeddedCassandra("cassandra.yaml");
如果您要通过自定义配置。
修改强>
通过向项目添加以下依赖项,可以使用上面的帮助程序类:
<dependency>
<groupId>org.cassandraunit</groupId>
<artifactId>cassandra-unit</artifactId>
<version>2.1.9.2</version>
</dependency>