簡體   English   中英

無法用cassandra啟動titan - IllegalArgumentException

[英]Unable to start titan with cassandra - IllegalArgumentException

嘗試使用以下代碼啟動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 at com.thinkaurelius.titan.util.system.ConfigurationUtil.instantiate(ConfigurationUtil.java:55 )com.thinkaurelius.titan.diskstorage.Backend.getImplementationClass(Backend.java:473)at com.thinkaurelius.titan.diskstorage.Backend.getStorageManager(Backend.java:407)at com.thinkaurelius.titan.graphdb.configuration。 GraphDatabaseConfiguration。(GraphDatabaseConfiguration.java:1320)at com.thinkaurelius.titan.core.TitanFactory.open(TitanFactory.java:94)at com.thinkaurelius.titan.core.TitanFactory.open(TitanFactory.java:84)at com。 thinkaurelius.titan.core.TitanFactory $ Builder.open(TitanFactory.java:139)位於main.java.com.bag的main.java.com.bag.server.database.TitanDatabaseAccess.start(TitanDatabaseAccess.java:55)。 service.TestServer。(TestServer.java:105)at main.java.com.bag.server.TestServer.main(TestServer .java:429)在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)at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)引起:sun.reflect的java.lang.reflect.InvocationTargetException。 sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)中的NativeConstructorAccessorImpl.newInstance0(Native Method)位於sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45),位於java.lang.reflect.Constructor.newInstance(構造函數。 java:423)at com.thinkaurelius.titan.util.system.ConfigurationUtil.instantiate(ConfigurationUtil.java:44)... 14更多引起:java.lang.NoSuchMethodError:org.slf4j.helpers.MessageFormatter.format(Ljava /郎/字符串; Ljava /郎/對象;)Ljava /郎 /串; at org.slf4j.impl.JDK14LoggerAdapter.info(JDK14LoggerAdapter.java:303)at com.thinkaurelius.titan.diskstorage.cassandra.utils.CassandraDaemonWrapper.start(CassandraDaemonWrapper.java:69)at com.thinkaurelius.titan.diskstorage.cassandra .embedded.CassandraEmbeddedStoreManager。(CassandraEmbeddedStoreManager.java:81)... 19更多

試圖在Intellij的Linux上運行它 - java。

這可能是因為您尚未啟動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>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM