将数据从Neo4j迁移到OrientDb时出错

时间:2018-11-08 11:23:53

标签: neo4j orientdb

从Neo4j导入数据时出现以下错误。 OrientDb服务器未按照文档运行。

   [cloud_user@xxxxxxx bin]$ ./orientdb-neo4j-importer.sh -neo4jlibdir ~/neo4j-community-3.4.7/lib/ -neo4jdbdir ~/backup_files/graph.db/

Neo4j to OrientDB Importer v.3.0.10 - Veloce (build eac0654847df662ca03b45a6a5efa5eadd229ca5, branch 3.0.x) - Copyrights (c) 2017 OrientDB LTD

WARNING: 'o' option not found. Defaulting to 'false'.

WARNING: 'i' option not found. Defaulting to 'false'.

WARNING: 'odbdir' option not found. Defaulting to '/opt/orientdb/databases/neo4j_import'.

Please make sure that there are no running servers on:
  '/home/cloud_user/backup_files/graph.db' (Neo4j)
and:
  '/opt/orientdb/databases/neo4j_import' (OrientDB)

Initializing Neo4j...Done

Initializing OrientDB...Exception in thread "main" java.lang.NoClassDefFoundError: com/tinkerpop/blueprints/impls/orient/OrientGraphFactory
        at com.orientechnologies.orient.neo4jimporter.ONeo4jImporterInitializer.invoke(ONeo4jImporterInitializer.java:94)
        at com.orientechnologies.orient.neo4jimporter.ONeo4jImporter.execute(ONeo4jImporter.java:108)
        at com.orientechnologies.orient.neo4jimporter.ONeo4jImporterMain.main(ONeo4jImporterMain.java:25)
Caused by: java.lang.ClassNotFoundException: com.tinkerpop.blueprints.impls.orient.OrientGraphFactory
        at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        ... 3 more
[cloud_user@xxxxxxx bin]$

2 个答案:

答案 0 :(得分:0)

我花了两个多小时试图将数据从Neo4j导入Orientdb。文档非常草率。

您可以通过将jar-orientdb-graphdb-*。jar下载到lib文件夹中来解决此问题。但是,您仍然可能面临缺少类的其他问题。 下载下面的jar有助于解决此类问题:

  • blueprints-core-*。jar
  • gremlin-groovy-3.3.4.jar

让我知道您是否仍然面临缺课的问题。

希望可以节省别人的时间。

答案 1 :(得分:0)

OrientDB不包含默认情况下执行此任务所需的所有必需库。通常,您可以定义要在pom文件中导入的子模块,但是如果您不使用Java应用程序,则需要自己将这些库导入OrientDB主目录的lib/文件夹中。

要使导入程序正常工作,请下载以下JAR文件并将其移至lib/文件夹中:
-orientdb-graphdb
-Tinkerpop Blueprints Core
-Gremlin Groovy