在Gremlin服务器中,我这样安装NEO4J库
bin/gremlin-server.sh -i org.apache.tinkerpop neo4j-gremlin x.y.z
是否有办法确定此lib是否已安装?
长话短说
我正在模拟存在某些网络问题的情况,因此在运行此功能之前,我禁用了网络连接。
脚本:
#!/bin/bash
echo "PING PING PING PING PING"
bin/gremlin-server.sh -i org.apache.tinkerpop neo4j-gremlin x.y.z
if [ $? -eq 0 ]
then
echo "Successfully Successfully Successfully Successfully"
else
echo "FAILED!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
fi
网络中断时的结果
PING PING PING PING PING
Redirecting to 'install org.apache.tinkerpop neo4j-gremlin 3.3.1' (-i will be removed in a future release)
Installing dependency org.apache.tinkerpop neo4j-gremlin 3.3.1
Could not install the dependency: Error grabbing Grapes -- [unresolved dependency: org.apache.tinkerpop#neo4j-gremlin;3.3.1: not found]
java.lang.RuntimeException: Error grabbing Grapes -- [unresolved dependency: org.apache.tinkerpop#neo4j-gremlin;3.3.1: not found]
at org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:232)
at groovy.grape.GrapeIvy.getDependencies(GrapeIvy.groovy:424)
at org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:232)
at groovy.grape.GrapeIvy.resolve(GrapeIvy.groovy:571)
at org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:232)
at groovy.grape.GrapeIvy.resolve(GrapeIvy.groovy:534)
at groovy.grape.Grape.resolve(Grape.java:202)
at org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:232)
at org.apache.tinkerpop.gremlin.groovy.util.DependencyGrabber.copyDependenciesToPath(DependencyGrabber.groovy:110)
at org.apache.tinkerpop.gremlin.server.util.GremlinServerInstall.main(GremlinServerInstall.java:38)
Successfully Successfully Successfully Successfully
要检查bash退出代码是否运行正常,我这样做了
cd wrongfolder
if [ $? -eq 0 ]
then
echo "Successfully Successfully Successfully Successfully"
else
echo "FAILED!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
fi
输出
PING PING PING PING PING
/install.sh: line 5: cd: wrongfolder: No such file or directory
FAILED!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
所以exit codes可以正常工作,但是对于Gremlin来说却不起作用
答案 0 :(得分:1)
我只是看了一下代码。加载插件的实用程序似乎没有产生错误代码,而是只是打印错误并正常退出。因此,您所看到的是预期的。
我添加了一个可用于3.2.10、3.3.4和3.4.0的修复程序:
https://github.com/apache/tinkerpop/commit/2d315e828149a132ecabf406af91acc3caec064c
我认为除了解析当前产生的输出外,没有其他方法可以确定成功或失败。