0

gremlinコンソールを介してNeo4J-DBに接続する「gremlin-groovy2.1.0」を使用しています。

gremlin> g = new Neo4jGraph('/home/user/neo4j-enterprise-1.7.2/data/graph.db')

これまでのところ問題はありません。今、私はいくつかのカスタムステップを作成したいと思います

gremlin> Gremlin.defineStep('example', ...)

カスタムステップは正常に機能しますが、neo4j-DBから切断して終了した後:

gremlin> g.shutdown()
gremlin> exit

DBに再接続すると、カスタムの「example」は使用できません。

だから私の質問は、Gremlin.defineStepを介して定義されたカスタムステップを永続的に保存する方法ですか?そして、defineStep()-Codeをファイル(おそらくgremlin-libディレクトリ)に保存して、必要なときにいつでもこのカスタムステップを使用することは可能ですか?

前もって感謝します!

4

1 に答える 1

2

defineStep()を使用しても、グラフ自体にステップが保持されることはありません。groovyの動的プログラミング機能を使用して、ステップで言語を拡張するだけです。したがって、カスタムステップは、defineStepを実行するGremlinインスタンス内でのみ使用できます。その意味で、ステップをグローバルに「永続化」する方法はありません。

ただし、ステップやその他の便利な関数を含むスクリプトを.groovyファイルに保存し、次のようなコンソールロード関数を使用してgremlinプロンプトでロードすることができます。

\. path/to/my-custom-steps-and-functions.groovy

Gremlinには、GremlinとRexsterの両方でこのプロセスを自動化するための未解決の問題があるため、将来のTinkerPopリリースでは、起動時にこのようなスクリプトのロードをトリガーして、すぐに実行できるようになることが期待できます。セッションの開始。

于 2012-12-04T12:00:35.957 に答える