1
我正在学习使用Gremlin,并刚刚开始使用命令行制作基本图形。我已经了解到,我可以把它放到一个脚本中,这基本上只是一堆groovy(我也刚刚熟悉)。我运行下面的脚本,并且一旦脚本完成运行(除了所有关于所做的节点/边的正确消息),我就会得到`==> null',一切都很好。我做错了什么?为什么gremlin在我的脚本中输出“null”?
graph = TinkerGraph.open()
g = graph.traversal()
//The nodes
curCharge = graph.addVertex(id, 1, label, "Topic", "name","Current")
pow = graph.addVertex(id, 2, label, "Topic", "name","power")
powFromNRG = graph.addVertex(id, 3, label, "Topic", "name","powerFromNRG")
NRGFromPower = graph.addVertex(id, 4, label, "Topic", "name","NRGFromPower")
powFromVI = graph.addVertex(id,5,label,"Topic","name","powerFromIV")
powInRes = graph.addVertex(id,6,label,"Topic","name","powerInResistors")
passSign = graph.addVertex(id,7,label,"Topic","name","passiveSignPower")
ohmLaw = graph.addVertex(id,8,label,"Topic","name","ohmsLaw")
//the pre-requisite edges
pow.addEdge("prereq",powFromNRG)
pow.addEdge("prereq",NRGFromPower)
pow.addEdge("prereq",powFromVI)
powFromVI.addEdge("prereq",passSign)
passSign.addEdge("prereq",powInRes)
ohmLaw.addEdge("prereq",powInRes)
//just some test queries
nL = g.V().has("name","passiveSignPower").inE("prereq").outV()
if(nL != null)
println "Hey!"
谢谢!我玩过这些教程,但一定错过了那部分。我发现Gremlin的文档有两种类型 - 更简单,教程内容和API本身。有没有另外一个参考文件可以更详细地解释事情,而不需要rtfm? –
有趣的问题。我知道参考文档很大,教程可能有点难找。您在填补文档空白方面想到了什么?在gremlin-users邮件列表中进行这种对话可能会更好,而不是SO评论。 –
好主意,我会检查邮件列表。我主要对将Gremlin包含在Java项目中感兴趣。我猜,我也会在Groovy中做到这一点。最终,我需要能够将我的Gremlin查询的结果输出到程序中,以便与他们一起完成任务,并且目前看不到这种方法,这很容易 –